-
Notifications
You must be signed in to change notification settings - Fork 0
/
atom.xml
490 lines (269 loc) · 60.9 KB
/
atom.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title>Minnie技术博客</title>
<link href="/atom.xml" rel="self"/>
<link href="https://sunshineuun.github.io/"/>
<updated>2018-05-11T03:45:31.334Z</updated>
<id>https://sunshineuun.github.io/</id>
<author>
<name>邱胜明</name>
</author>
<generator uri="http://hexo.io/">Hexo</generator>
<entry>
<title>Oracle 临时表空间相关操作</title>
<link href="https://sunshineuun.github.io/2018/05/11/racle-%E4%B8%B4%E6%97%B6%E8%A1%A8%E7%A9%BA%E9%97%B4%E7%9B%B8%E5%85%B3%E6%93%8D%E4%BD%9C/"/>
<id>https://sunshineuun.github.io/2018/05/11/racle-临时表空间相关操作/</id>
<published>2018-05-11T02:13:31.000Z</published>
<updated>2018-05-11T03:45:31.334Z</updated>
<content type="html"><![CDATA[<h5 id="查询用户默认临时表空间"><a href="#查询用户默认临时表空间" class="headerlink" title="查询用户默认临时表空间"></a>查询用户默认临时表空间</h5><p><code>select temporary_tablespace from dba_users where username='用户名';</code></p><h5 id="补充知识"><a href="#补充知识" class="headerlink" title="补充知识"></a>补充知识</h5><h6 id="不要创建单个文件超过32GB的表空间"><a href="#不要创建单个文件超过32GB的表空间" class="headerlink" title="不要创建单个文件超过32GB的表空间"></a>不要创建单个文件超过32GB的表空间</h6><p>如果你创建的表空间超过32GB,请把这个表空间存储为多个数据文件,每个文件不大于32GB。这样,就可以成功的创建表空间。</p><h5 id="查看表空间利用率"><a href="#查看表空间利用率" class="headerlink" title="查看表空间利用率"></a>查看表空间利用率</h5><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br></pre></td><td class="code"><pre><span class="line">SELECT</span><br><span class="line"> D.TABLESPACE_NAME,</span><br><span class="line"> SPACE || 'M' "SUM_SPACE(M)",</span><br><span class="line"> BLOCKS "SUM_BLOCKS",</span><br><span class="line"> SPACE - NVL(FREE_SPACE, 0) || 'M' "USED_SPACE(M)",</span><br><span class="line"> ROUND((1 - NVL(FREE_SPACE, 0) / SPACE) * 100, 2) || '%' "USED_RATE(%)",</span><br><span class="line"> FREE_SPACE || 'M' "FREE_SPACE(M)"</span><br><span class="line">FROM (SELECT</span><br><span class="line"> TABLESPACE_NAME,</span><br><span class="line"> ROUND(SUM(BYTES) / (1024 * 1024), 2) SPACE,</span><br><span class="line"> SUM(BLOCKS) BLOCKS</span><br><span class="line"> FROM DBA_DATA_FILES</span><br><span class="line"> GROUP BY TABLESPACE_NAME) D,</span><br><span class="line"> (SELECT</span><br><span class="line"> TABLESPACE_NAME,</span><br><span class="line"> ROUND(SUM(BYTES) / (1024 * 1024), 2) FREE_SPACE</span><br><span class="line"> FROM DBA_FREE_SPACE</span><br><span class="line"> GROUP BY TABLESPACE_NAME) F</span><br><span class="line">WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME (+)</span><br><span class="line">UNION ALL </span><br><span class="line"> </span><br><span class="line">--如果有临时表空间 </span><br><span class="line">SELECT</span><br><span class="line"> D.TABLESPACE_NAME,</span><br><span class="line"> SPACE || 'M' "SUM_SPACE(M)",</span><br><span class="line"> BLOCKS SUM_BLOCKS,</span><br><span class="line"> USED_SPACE || 'M' "USED_SPACE(M)",</span><br><span class="line"> ROUND(NVL(USED_SPACE, 0) / SPACE * 100, 2) || '%' "USED_RATE(%)",</span><br><span class="line"> NVL(FREE_SPACE, 0) || 'M' "FREE_SPACE(M)"</span><br><span class="line">FROM (SELECT</span><br><span class="line"> TABLESPACE_NAME,</span><br><span class="line"> ROUND(SUM(BYTES) / (1024 * 1024), 2) SPACE,</span><br><span class="line"> SUM(BLOCKS) BLOCKS</span><br><span class="line"> FROM DBA_TEMP_FILES</span><br><span class="line"> GROUP BY TABLESPACE_NAME) D,</span><br><span class="line"> (SELECT</span><br><span class="line"> TABLESPACE_NAME,</span><br><span class="line"> ROUND(SUM(BYTES_USED) / (1024 * 1024), 2) USED_SPACE,</span><br><span class="line"> ROUND(SUM(BYTES_FREE) / (1024 * 1024), 2) FREE_SPACE</span><br><span class="line"> FROM V$TEMP_SPACE_HEADER</span><br><span class="line"> GROUP BY TABLESPACE_NAME) F</span><br><span class="line">WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME (+); </span><br><span class="line">ORDER BY 1;</span><br></pre></td></tr></table></figure><h5 id="临时表空间释放"><a href="#临时表空间释放" class="headerlink" title="临时表空间释放"></a>临时表空间释放</h5><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">alter tablespace temp shrink space;</span><br></pre></td></tr></table></figure><h5 id="临时表空间增加数据文件"><a href="#临时表空间增加数据文件" class="headerlink" title="临时表空间增加数据文件"></a>临时表空间增加数据文件</h5><p>PS:为表空间增加数据块<br><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">alter tablespace temp add tempfile 'D:\app\Administrator\oradata\vlsi\TEMP02.DBF' size 1024 M;</span><br></pre></td></tr></table></figure></p><h5 id="删除临时表空间"><a href="#删除临时表空间" class="headerlink" title="删除临时表空间"></a>删除临时表空间</h5><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">-- temp02为表空间的名称</span><br><span class="line">DROP TABLESPACE temp02 INCLUDING CONTENTS AND DATAFILES;</span><br></pre></td></tr></table></figure><h5 id="创建临时表空间"><a href="#创建临时表空间" class="headerlink" title="创建临时表空间"></a>创建临时表空间</h5><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br></pre></td><td class="code"><pre><span class="line">CREATE TEMPORARY</span><br><span class="line"> TABLESPACE temp03</span><br><span class="line"> TEMPFILE 'D:\APP\ADMINISTRATOR\ORADATA\ORCL\TEMP03.DBF'</span><br><span class="line"> SIZE 1024M</span><br><span class="line"> AUTOEXTEND ON</span><br><span class="line"> MAXSIZE 31200M;</span><br></pre></td></tr></table></figure><h5 id="临时表空间相关信息"><a href="#临时表空间相关信息" class="headerlink" title="临时表空间相关信息"></a>临时表空间相关信息</h5><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br></pre></td><td class="code"><pre><span class="line">SELECT</span><br><span class="line"> FILE_NAME 临时表文件路径,</span><br><span class="line"> FILE_ID,</span><br><span class="line"> TABLESPACE_NAME 表空间名称,</span><br><span class="line"> bytes 当前所占有的字节长度,</span><br><span class="line"> blocks,</span><br><span class="line"> status,</span><br><span class="line"> autoextensible 是否自动扩展,</span><br><span class="line"> maxbytes 最大空间字节数,</span><br><span class="line"> maxblocks,</span><br><span class="line"> increment_by,</span><br><span class="line"> user_bytes 已使用空间的字节数,</span><br><span class="line"> user_blocks</span><br><span class="line">FROM dba_temp_files;</span><br></pre></td></tr></table></figure><h6 id="参考文献"><a href="#参考文献" class="headerlink" title="参考文献"></a>参考文献</h6><ul><li><a href="http://blog.itpub.net/29578568/viewspace-2141980/" target="_blank" rel="noopener">1</a></li></ul>]]></content>
<summary type="html">
<h5 id="查询用户默认临时表空间"><a href="#查询用户默认临时表空间" class="headerlink" title="查询用户默认临时表空间"></a>查询用户默认临时表空间</h5><p><code>select temporary_tablespace
</summary>
</entry>
<entry>
<title>Maven POM文件相关配置</title>
<link href="https://sunshineuun.github.io/2018/05/11/ven-POM%E6%96%87%E4%BB%B6%E7%9B%B8%E5%85%B3%E9%85%8D%E7%BD%AE/"/>
<id>https://sunshineuun.github.io/2018/05/11/ven-POM文件相关配置/</id>
<published>2018-05-11T01:37:00.000Z</published>
<updated>2018-05-11T01:42:01.023Z</updated>
<content type="html"><![CDATA[<h3 id="Dependency"><a href="#Dependency" class="headerlink" title="Dependency"></a>Dependency</h3><h4 id="Scope"><a href="#Scope" class="headerlink" title="Scope"></a>Scope</h4><p><code><dependency></code>中还引入了<code><scope></code>,它主要管理依赖的部署。目前<code><scope></code>可以使用5个值:</p><ul><li>compile,缺省值,适用于所有阶段,会随着项目一起发布。 </li><li>provided,类似compile,期望JDK、容器或使用者会提供这个依赖。如servlet.jar。 * runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段。 </li><li>test,只在测试时使用,用于编译和运行测试代码。不会随项目发布。 </li><li>system,类似provided,需要显式提供包含依赖的jar,Maven不会在Repository中查找它。</li></ul>]]></content>
<summary type="html">
<h3 id="Dependency"><a href="#Dependency" class="headerlink" title="Dependency"></a>Dependency</h3><h4 id="Scope"><a href="#Scope" class="he
</summary>
<category term="Maven" scheme="https://sunshineuun.github.io/tags/Maven/"/>
</entry>
<entry>
<title>Intellij IDEA小技巧之快速比较代码版本</title>
<link href="https://sunshineuun.github.io/2018/05/10/ntellij-IDEA%E5%B0%8F%E6%8A%80%E5%B7%A7%E4%B9%8B%E4%B8%80/"/>
<id>https://sunshineuun.github.io/2018/05/10/ntellij-IDEA小技巧之一/</id>
<published>2018-05-10T05:48:00.000Z</published>
<updated>2018-05-10T05:54:26.752Z</updated>
<content type="html"><![CDATA[<p>当代码加入版本管理的时候,快捷的查看与上个版本的差异。<br><img src="/images/pasted-56.png" alt="upload successful"></p>]]></content>
<summary type="html">
<p>当代码加入版本管理的时候,快捷的查看与上个版本的差异。<br><img src="/images/pasted-56.png" alt="upload successful"></p>
</summary>
<category term="IDEA" scheme="https://sunshineuun.github.io/tags/IDEA/"/>
</entry>
<entry>
<title>Jenkins Windows批处理异常</title>
<link href="https://sunshineuun.github.io/2018/05/07/nkins/"/>
<id>https://sunshineuun.github.io/2018/05/07/nkins/</id>
<published>2018-05-07T02:43:00.000Z</published>
<updated>2018-05-07T02:46:21.930Z</updated>
<content type="html"><![CDATA[<h4 id="Build-step-‘Execute-Windows-batch-command’-marked-build-as-failure解决方法"><a href="#Build-step-‘Execute-Windows-batch-command’-marked-build-as-failure解决方法" class="headerlink" title="Build step ‘Execute Windows batch command’ marked build as failure解决方法"></a>Build step ‘Execute Windows batch command’ marked build as failure解决方法</h4><p>jenkins执行命令,会把命令生成一个批处理文件执行,而pybot命令对于批处理来说是外部命令,所以要加call表示调用。而jenkins执行windows命令,若退出代码不为0 ,则jenkins会将构建标记为失败,所以需要加上exit 0表示执行完成退出<br>解决方法:构建命令在pybot前面加上call,最后加上exit 0</p>]]></content>
<summary type="html">
<h4 id="Build-step-‘Execute-Windows-batch-command’-marked-build-as-failure解决方法"><a href="#Build-step-‘Execute-Windows-batch-command’-marked-
</summary>
<category term="Jenkins" scheme="https://sunshineuun.github.io/tags/Jenkins/"/>
</entry>
<entry>
<title>SpringBoot打包异常</title>
<link href="https://sunshineuun.github.io/2018/05/04/Spring-Boot-Maven-Plugin%E6%89%93%E5%8C%85%E5%BC%82%E5%B8%B8/"/>
<id>https://sunshineuun.github.io/2018/05/04/Spring-Boot-Maven-Plugin打包异常/</id>
<published>2018-05-04T07:50:00.000Z</published>
<updated>2018-05-10T05:57:35.592Z</updated>
<content type="html"><![CDATA[<h4 id="Spring-Boot-Maven-Plugin打包异常及三种解决方法:Unable-to-find-main-class"><a href="#Spring-Boot-Maven-Plugin打包异常及三种解决方法:Unable-to-find-main-class" class="headerlink" title="Spring Boot Maven Plugin打包异常及三种解决方法:Unable to find main class"></a>Spring Boot Maven Plugin打包异常及三种解决方法:Unable to find main class</h4><p>【背景】spring-boot项目,打包成可执行jar,项目内有两个带有main方法的类并且都使用了@SpringBootApplication注解(或者另一种情形:你有两个main方法并且所在类都没有使用@SpringBootApplication注解)</p><p>问题】</p><p>执行mvn clean package,报错如下(说点不相关的,使用install同理。因为spring-boot:repackage目标(goal)(下文会说)被绑定在package构建阶段(phases),而package阶段在install阶段之前,指定构建阶段之前的阶段都会执行。详细参见:<br><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">Introduction to the Build Lifecycle)</span><br><span class="line"> [ERROR] Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:1.5.3.RELEASE:repackage (default) on project webapps-api-bid: Execution default of goal org.springframework.boot:spring-boot-maven-plugin:1.5.3.RELEASE:repackage failed: Unable to find a single main class from the following candidates [com.xx.api.main.ApiBidMain, com.xx.webapps.api.main.WebappsApiBidMain]</span><br></pre></td></tr></table></figure></p><p>执行mvn clean package spring-boot:repackage,报错如下,不如上面日志详细<br><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line"> [ERROR] Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:1.5.3.RELEASE:repackage (default) on project webapps-api-bid: Execution default of goal org.springframework.boot:spring-boot-maven-plugin:1.5.3.RELEASE:repackage failed: Unable to find main class</span><br></pre></td></tr></table></figure></p><p>参考文献:<a href="https://www.cnblogs.com/thinking-better/p/7827368.html" target="_blank" rel="noopener">传送门</a></p>]]></content>
<summary type="html">
<h4 id="Spring-Boot-Maven-Plugin打包异常及三种解决方法:Unable-to-find-main-class"><a href="#Spring-Boot-Maven-Plugin打包异常及三种解决方法:Unable-to-find-main-cla
</summary>
<category term="Spring Boot" scheme="https://sunshineuun.github.io/tags/Spring-Boot/"/>
</entry>
<entry>
<title>Jenkins部署</title>
<link href="https://sunshineuun.github.io/2018/05/04/nkines%E9%83%A8%E7%BD%B2/"/>
<id>https://sunshineuun.github.io/2018/05/04/nkines部署/</id>
<published>2018-05-04T06:23:00.000Z</published>
<updated>2018-05-04T07:11:59.105Z</updated>
<content type="html"><![CDATA[<h4 id="安装"><a href="#安装" class="headerlink" title="安装"></a>安装</h4><p>安装过程基本简单,按照提示,下一步下一步就行了。</p><h4 id="配置Maven打包"><a href="#配置Maven打包" class="headerlink" title="配置Maven打包"></a>配置Maven打包</h4><ol><li>确保新建任务中,包含【构建一个Maven项目】的选项<br><img src="/images/pasted-50.png" alt="upload successful"></li><li>Repository URL中填写项目的代码库;Credentials填写用户名密码,可以通过Add按钮进行创建用户的。<br><img src="/images/pasted-51.png" alt="upload successful"></li></ol><p>这样就能简单的打包一个项目。</p><h4 id="全局的Maven配置"><a href="#全局的Maven配置" class="headerlink" title="全局的Maven配置"></a>全局的Maven配置</h4><p>需要配置Jenkins Maven的全局仓库,但是现在不知道Jenkins Maven全局仓库在哪里,只能在打包的时候指定Maven仓库。如图:<br><img src="/images/pasted-52.png" alt="upload successful"></p><h4 id="常见问题总结"><a href="#常见问题总结" class="headerlink" title="常见问题总结"></a>常见问题总结</h4><ol><li>Maven打包的时候可能找不到java的基础包,例如Java.lang这样的,这样可能是JDK没有配置好,去POM文件中制定JDK的位置。</li><li>出现一直在下载包的情况下,可能你所认为的Maven本地仓库,并不是Jenkins所使用的仓库,下载过程中,有些包下载不下来导致错误。</li><li>项目依赖的,都会依赖本地项目,建议打包用<code>install</code>命令,发布到本地仓库。</li></ol><h4 id="部署到Tomcat上"><a href="#部署到Tomcat上" class="headerlink" title="部署到Tomcat上"></a>部署到Tomcat上</h4><p><img src="/images/pasted-53.png" alt="upload successful"></p><ul><li>WAR/EAR files:包的相对路径</li><li><p>Credentials:访问tomcat的用户名密码。<br>在Tomcat/conf/tomcat-users.xml文件中添加以下配置</p><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line"><role rolename="manager-gui" /> </span><br><span class="line"><role rolename="manager-script" /> </span><br><span class="line"><role rolename="manager-status" /> </span><br><span class="line"><user username="deploy" password="deploy" roles="manager-gui,manager-script,manager-status" /></span><br></pre></td></tr></table></figure></li><li><p>Tomcat URL:tomcat的地址。</p></li><li>一定要让Tomcat启动着哦。<h4 id="邮箱配置"><a href="#邮箱配置" class="headerlink" title="邮箱配置"></a>邮箱配置</h4></li><li>系统管理 >> 全局工具配置</li><li>具体配置<br><img src="/images/pasted-54.png" alt="upload successful"></li></ul>]]></content>
<summary type="html">
<h4 id="安装"><a href="#安装" class="headerlink" title="安装"></a>安装</h4><p>安装过程基本简单,按照提示,下一步下一步就行了。</p>
<h4 id="配置Maven打包"><a href="#配置Maven打包" c
</summary>
<category term="Jenkins" scheme="https://sunshineuun.github.io/tags/Jenkins/"/>
</entry>
<entry>
<title>Oracle账户被锁</title>
<link href="https://sunshineuun.github.io/2018/05/02/Oracle%E8%B4%A6%E6%88%B7%E8%A2%AB%E9%94%81/"/>
<id>https://sunshineuun.github.io/2018/05/02/Oracle账户被锁/</id>
<published>2018-05-02T01:32:00.000Z</published>
<updated>2018-05-04T06:23:15.614Z</updated>
<content type="html"><![CDATA[<h5 id="连接到sysdba"><a href="#连接到sysdba" class="headerlink" title="连接到sysdba"></a>连接到sysdba</h5><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">conn sys as sysdba</span><br></pre></td></tr></table></figure><h5 id="解除锁定"><a href="#解除锁定" class="headerlink" title="解除锁定"></a>解除锁定</h5><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">alter user 用户名 account unlock</span><br></pre></td></tr></table></figure>]]></content>
<summary type="html">
<h5 id="连接到sysdba"><a href="#连接到sysdba" class="headerlink" title="连接到sysdba"></a>连接到sysdba</h5><figure class="highlight plain"><table><tr><t
</summary>
<category term="Oracle" scheme="https://sunshineuun.github.io/tags/Oracle/"/>
</entry>
<entry>
<title>MongoDB异常0501</title>
<link href="https://sunshineuun.github.io/2018/05/01/ongoDB%E5%BC%82%E5%B8%B8/"/>
<id>https://sunshineuun.github.io/2018/05/01/ongoDB异常/</id>
<published>2018-05-01T10:19:49.000Z</published>
<updated>2018-05-01T10:22:14.295Z</updated>
<content type="html"><![CDATA[<p>pymongo.errors.CursorNotFound: Cursor not found, cursor id: 124891571478</p><h5 id="原因"><a href="#原因" class="headerlink" title="原因"></a>原因</h5><p>默认 mongo server维护连接的时间窗口是十分钟<br>默认 单次从 server获取数据是101条或者 大于1M小于16M的数据<br>所以默认情况下,如果10分钟内未能处理完数据,则抛出该异常。</p><h5 id="解决办法"><a href="#解决办法" class="headerlink" title="解决办法"></a>解决办法</h5><h6 id="方法一"><a href="#方法一" class="headerlink" title="方法一"></a>方法一</h6><p>修改每批次获取数据量的条数,即batch size:<br>collection.find(condition).batch_size(5)</p><p>批量数需 估算十分钟内能处理的数据量</p><h6 id="方法二"><a href="#方法二" class="headerlink" title="方法二"></a>方法二</h6><p>延长超时时间 需显示的关闭cursor<br><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line">cursor=db.images.find({}{'id':1,'image_path':1,'_id':0},no_cursor_timeout=True)</span><br><span class="line"></span><br><span class="line"></span><br><span class="line">for i in cursor:</span><br><span class="line"> .....</span><br><span class="line"> .....</span><br><span class="line">cursor.close()</span><br></pre></td></tr></table></figure></p>]]></content>
<summary type="html">
<p>pymongo.errors.CursorNotFound: Cursor not found, cursor id: 124891571478</p>
<h5 id="原因"><a href="#原因" class="headerlink" title="原因"></a>
</summary>
</entry>
<entry>
<title>IDEA踩坑之路</title>
<link href="https://sunshineuun.github.io/2018/04/20/EA%E8%B8%A9%E5%9D%91%E4%B9%8B%E8%B7%AF/"/>
<id>https://sunshineuun.github.io/2018/04/20/EA踩坑之路/</id>
<published>2018-04-20T08:08:00.000Z</published>
<updated>2018-04-20T08:16:48.432Z</updated>
<content type="html"><![CDATA[<p>问题是这样的,今天重新从服务器上下载项目进行开发。Maven Tomcat什么都部署好了,就是项目启动部署到Tomcat的时候,就是不把依赖的Model打包到Web-INF/lib目录下面,这尼玛找了我整整快一天了,尝试各种方法。</p><ol><li>怀疑Maven依赖有问题</li><li>怀疑项目配置有问题 <br><br>. <br><br>. <br><br>. <br><br>. <br></li><li>最后发现是在Setting > File Type > igonre files and folders中配置 <code>target</code>目录。导致的,不要问我怎么发现的,全靠运气。</li></ol><p>如图<br><img src="/images/pasted-49.png" alt="upload successful"></p>]]></content>
<summary type="html">
<p>问题是这样的,今天重新从服务器上下载项目进行开发。Maven Tomcat什么都部署好了,就是项目启动部署到Tomcat的时候,就是不把依赖的Model打包到Web-INF/lib目录下面,这尼玛找了我整整快一天了,尝试各种方法。</p>
<ol>
<li>怀疑Maven依
</summary>
<category term="IDEA" scheme="https://sunshineuun.github.io/tags/IDEA/"/>
</entry>
<entry>
<title>Sublime-快捷键</title>
<link href="https://sunshineuun.github.io/2018/04/12/blime-%E5%BF%AB%E6%8D%B7%E9%94%AE/"/>
<id>https://sunshineuun.github.io/2018/04/12/blime-快捷键/</id>
<published>2018-04-12T02:11:00.000Z</published>
<updated>2018-04-13T05:10:41.915Z</updated>
<content type="html"><![CDATA[<h4 id="选择类"><a href="#选择类" class="headerlink" title="选择类"></a>选择类</h4><ul><li><p>Ctrl+D 选中光标所占的文本,继续操作则会选中下一个相同的文本。</p></li><li><p>Alt+F3 选中文本按下快捷键,即可一次性选择全部的相同文本进行同时编辑。举个栗子:快速选中并更改所有相同的变量名、函数名等。</p></li><li><p>Ctrl+L 选中整行,继续操作则继续选择下一行,效果和 Shift+↓ 效果一样。</p></li><li><p>Ctrl+Shift+L 先选中多行,再按下快捷键,会在每行行尾插入光标,即可同时编辑这些行。</p></li><li><p>Ctrl+Shift+M 选择括号内的内容(继续选择父括号)。举个栗子:快速选中删除函数中的代码,重写函数体代码或重写括号内里的内容。</p></li><li><p>Ctrl+M 光标移动至括号内结束或开始的位置。</p></li><li><p>Ctrl+Enter 在下一行插入新行。举个栗子:即使光标不在行尾,也能快速向下插入一行。</p></li><li><p>Ctrl+Shift+Enter 在上一行插入新行。举个栗子:即使光标不在行首,也能快速向上插入一行。</p></li><li><p>Ctrl+Shift+[ 选中代码,按下快捷键,折叠代码。</p></li><li><p>Ctrl+Shift+] 选中代码,按下快捷键,展开代码。</p></li><li><p>Ctrl+K+0 展开所有折叠代码。</p></li><li><p>Ctrl+← 向左单位性地移动光标,快速移动光标。</p></li><li><p>Ctrl+→ 向右单位性地移动光标,快速移动光标。</p></li><li><p>shift+↑ 向上选中多行。</p></li><li><p>shift+↓ 向下选中多行。</p></li><li><p>Shift+← 向左选中文本。</p></li><li><p>Shift+→ 向右选中文本。</p></li><li><p>Ctrl+Shift+← 向左单位性地选中文本。</p></li><li><p>Ctrl+Shift+→ 向右单位性地选中文本。</p></li><li><p>Ctrl+Shift+↑ 将光标所在行和上一行代码互换(将光标所在行插入到上一行之前)。</p></li><li><p>Ctrl+Shift+↓ 将光标所在行和下一行代码互换(将光标所在行插入到下一行之后)。</p></li><li><p>Ctrl+Alt+↑ 向上添加多行光标,可同时编辑多行。</p></li><li><p>Ctrl+Alt+↓ 向下添加多行光标,可同时编辑多行。</p></li></ul><h4 id="编辑类"><a href="#编辑类" class="headerlink" title="编辑类"></a>编辑类</h4><ul><li><p>Ctrl+J 合并选中的多行代码为一行。举个栗子:将多行格式的CSS属性合并为一行。</p></li><li><p>Ctrl+Shift+D 复制光标所在整行,插入到下一行。</p></li><li><p>Tab 向右缩进。</p></li><li><p>Shift+Tab 向左缩进。</p></li><li><p>Ctrl+K+K 从光标处开始删除代码至行尾。</p></li><li><p>Ctrl+Shift+K 删除整行。</p></li><li><p>Ctrl+/ 注释单行。</p></li><li><p>Ctrl+Shift+/ 注释多行。</p></li><li><p>Ctrl+K+U 转换大写。</p></li><li><p>Ctrl+K+L 转换小写。</p></li><li><p>Ctrl+Z 撤销。</p></li><li><p>Ctrl+Y 恢复撤销。</p></li><li><p>Ctrl+U 软撤销,感觉和 Gtrl+Z 一样。</p></li><li><p>Ctrl+F2 设置书签</p></li><li><p>Ctrl+T 左右字母互换。</p></li><li><p>F6 单词检测拼写</p></li><li><p>Ctrl+H 替换</p></li></ul><h4 id="搜索类"><a href="#搜索类" class="headerlink" title="搜索类"></a>搜索类</h4><ul><li><p>Ctrl+F 打开底部搜索框,查找关键字。</p></li><li><p>Ctrl+shift+F 在文件夹内查找,与普通编辑器不同的地方是sublime允许添加多个文件夹进行查找,略高端,未研究。</p></li><li><p>Ctrl+P 打开搜索框。举个栗子:1、输入当前项目中的文件名,快速搜索文件,2、输入@和关键字,查找文件中函数名,3、输入:和数字,跳转到文件中该行代码,4、输入#和关键字,查找变量名。</p></li><li><p>Ctrl+G 打开搜索框,自动带:,输入数字跳转到该行代码。举个栗子:在页面代码比较长的文件中快速定位。</p></li><li><p>Ctrl+R 打开搜索框,自动带@,输入关键字,查找文件中的函数名。举个栗子:在函数较多的页面快速查找某个函数。</p></li><li><p>Ctrl+: 打开搜索框,自动带#,输入关键字,查找文件中的变量名、属性名等。</p></li><li><p>Ctrl+Shift+P 打开命令框。场景栗子:打开命名框,输入关键字,调用sublime text或插件的功能,例如使用package安装插件。</p></li><li><p>Esc 退出光标多行选择,退出搜索框,命令框等。</p></li></ul><h4 id="显示类"><a href="#显示类" class="headerlink" title="显示类"></a>显示类</h4><ul><li><p>Ctrl+Tab 按文件浏览过的顺序,切换当前窗口的标签页。</p></li><li><p>Ctrl+PageDown 向左切换当前窗口的标签页。</p></li><li><p>Ctrl+PageUp 向右切换当前窗口的标签页。</p></li><li><p>Alt+Shift+1 窗口分屏,恢复默认1屏(非小键盘的数字)</p></li><li><p>Alt+Shift+2 左右分屏-2列</p></li><li><p>Alt+Shift+3 左右分屏-3列</p></li><li><p>Alt+Shift+4 左右分屏-4列</p></li><li><p>Alt+Shift+5 等分4屏</p></li><li><p>Alt+Shift+8 垂直分屏-2屏</p></li><li><p>Alt+Shift+9 垂直分屏-3屏</p></li><li><p>Ctrl+K+B 开启/关闭侧边栏。</p></li><li><p>F11 全屏模式</p></li><li><p>Shift+F11 免打扰模式</p></li></ul>]]></content>
<summary type="html">
<h4 id="选择类"><a href="#选择类" class="headerlink" title="选择类"></a>选择类</h4><ul>
<li><p>Ctrl+D 选中光标所占的文本,继续操作则会选中下一个相同的文本。</p>
</li>
<li><p>Alt+F
</summary>
<category term="Sublime" scheme="https://sunshineuun.github.io/tags/Sublime/"/>
</entry>
<entry>
<title>Sublime-语言包插件</title>
<link href="https://sunshineuun.github.io/2018/04/12/Sublime-%E6%B1%89%E5%8C%96/"/>
<id>https://sunshineuun.github.io/2018/04/12/Sublime-汉化/</id>
<published>2018-04-12T02:04:00.000Z</published>
<updated>2018-04-12T02:11:19.047Z</updated>
<content type="html"><![CDATA[<ol><li>启动并进入sublime主界面;</li><li>点击菜单栏中<code>preferences</code>,弹出选项中找到<code>package control</code>;可能<code>preferences</code>下没有<code>package control</code>需要在菜单栏下寻找<code>install control</code>的选项。具体忘记了!</li><li>进入下一步,选择<code>install package</code>,可以键入<code>install package</code>进行查找<br><img src="/images/pasted-48.png" alt="upload successful"></li><li>继续下一步,尝试输入<code>localization</code>,因为小编自己已经安装,所以下拉就不会再显示这个插件名,当然你会发现还有其他的相关插件可以汉化sublime;</li><li>插件以及安装成功,现在我们就可以汉化啦,点击help菜单,找到“language”选择你想要的语言即可~~</li></ol>]]></content>
<summary type="html">
<ol>
<li>启动并进入sublime主界面;</li>
<li>点击菜单栏中<code>preferences</code>,弹出选项中找到<code>package control</code>;可能<code>preferences</code>下没有<code>pac
</summary>
<category term="Sublime" scheme="https://sunshineuun.github.io/tags/Sublime/"/>
<category term="IDE" scheme="https://sunshineuun.github.io/tags/IDE/"/>
</entry>
<entry>
<title>MongoDB CRUD操作</title>
<link href="https://sunshineuun.github.io/2018/04/06/ngoDB-CRUD%E6%93%8D%E4%BD%9C/"/>
<id>https://sunshineuun.github.io/2018/04/06/ngoDB-CRUD操作/</id>
<published>2018-04-06T09:11:22.000Z</published>
<updated>2018-04-06T09:15:28.157Z</updated>
<content type="html"><![CDATA[<h4 id="插入操作"><a href="#插入操作" class="headerlink" title="插入操作"></a>插入操作</h4><h5 id="插入单个文档"><a href="#插入单个文档" class="headerlink" title="插入单个文档"></a>插入单个文档</h5><p><strong><code>insert_one</code></strong><br><strong><code>insert_many</code></strong></p>]]></content>
<summary type="html">
<h4 id="插入操作"><a href="#插入操作" class="headerlink" title="插入操作"></a>插入操作</h4><h5 id="插入单个文档"><a href="#插入单个文档" class="headerlink" title="插入单个文
</summary>
</entry>
<entry>
<title>MongoDB3.6系列 - 限制与阈值</title>
<link href="https://sunshineuun.github.io/2018/04/06/ongodb%E7%B3%BB%E5%88%97-%E9%99%90%E5%88%B6%E4%B8%8E%E9%98%88%E5%80%BC/"/>
<id>https://sunshineuun.github.io/2018/04/06/ongodb系列-限制与阈值/</id>
<published>2018-04-06T05:54:00.000Z</published>
<updated>2018-04-06T07:02:05.748Z</updated>
<content type="html"><![CDATA[<h4 id="简述"><a href="#简述" class="headerlink" title="简述"></a>简述</h4><p>本文摘抄官方文档。</p><h4 id="Bson文件"><a href="#Bson文件" class="headerlink" title="Bson文件"></a>Bson文件</h4><ol><li>Bson文档最大为16兆字节;</li><li>支持不超过100层的文档嵌套;</li></ol><h4 id="命名限制"><a href="#命名限制" class="headerlink" title="命名限制"></a>命名限制</h4><h5 id="数据库命名限制"><a href="#数据库命名限制" class="headerlink" title="数据库命名限制"></a>数据库命名限制</h5><ul><li>数据库名称不区分大小写</li><li><p>对于Windows上运行的MongoDB,不能包含以下字符</p><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">/ \。“$ * <>:|?</span><br></pre></td></tr></table></figure></li><li><p>对于Linux和Unix上运行的MongoDB,不能包含以下字符</p><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">/ \。“$</span><br></pre></td></tr></table></figure></li><li><p>数据库名字不能包含空字符</p></li><li>数据库名称不能为空,且必须少于64个字符</li></ul><h5 id="集合命名限制"><a href="#集合命名限制" class="headerlink" title="集合命名限制"></a>集合命名限制</h5><ul><li>应该已下划线或者字母开通,但不能:<ul><li>包含<code>$</code>符号</li><li>是一个空字符</li><li>包含空字符</li><li>以<code>system.</code>为前缀。(保留内部使用)\</li></ul></li><li>数据库名称+点号(.)+集合名称(即是<code><database>.<collection></code>)的字符长短不超过120个字节。</li></ul><h5 id="字段命名限制"><a href="#字段命名限制" class="headerlink" title="字段命名限制"></a>字段命名限制</h5><ul><li>同集合命名限制</li></ul><h4 id="索引限制(Index-key-Limit)"><a href="#索引限制(Index-key-Limit)" class="headerlink" title="索引限制(Index key Limit)"></a>索引限制(Index key Limit)</h4><p>索引的条目的总大小,取决于Bson类型的结构开销,必须小于1024个字节。</p><h6 id="超限制的报错"><a href="#超限制的报错" class="headerlink" title="超限制的报错"></a>超限制的报错</h6><ul><li>如果现有文档的索引条目超过<code>index key limit</code>,则MongoDB不会再这上面建立索引。</li><li>如果索引字段的索引条目超过,则重新编索引操作将会出错。 Reindexing操作是<code>compact</code>和<code>repairDatabase</code>命令以及<code>db.collection.reIndex()</code>方法的一部分。</li><li>索引字段对应的索引条目超过该索引集合,那么索引字段中的任何文档,不会插入到集合中,而是返回错误。以前版本会插入,但不索引这个文档。</li><li>更新这个所以字段将会出现的错误,如果这个更新值导致索引条目超过<code>index key limit</code>的限制,将会出错,更新失败。</li><li><code>mongorestore</code>和<code>mongoimport</code>将不在插入包含索引的文档,该索引字段的对应的索引条目将要超过<code>index key limit</code>。</li><li><p>对于现有分片集合,<code>chunk migration</code>将会出现失败的原因,文档包含的索引字段将要超过索引条目的限制<code>index key limit</code></p><p><a href="https://docs.mongodb.com/manual/reference/limits/#Index-Key-Limit" target="_blank" rel="noopener">官网参考</a></p><h6 id="其他限制"><a href="#其他限制" class="headerlink" title="其他限制"></a>其他限制</h6><ul><li>每个索引的集合数:一个集合可以有不超过64个索引</li><li>索引名称长度:及<code><database name>.<collection name>.$<index name></code>的组合不能超过128个字符。</li><li>复合索引:不能超过31个字段。</li><li>您不能将$text需要特殊文本索引的查询与需要不同类型的特殊索引的查询运算符结合使用。例如,您不能将$text查询与$near操作员组合在一起。</li><li>多键索引不能涵盖对数组字段的查询。</li><li>地理空间索引不能 覆盖查询。</li></ul></li></ul><h4 id="参考"><a href="#参考" class="headerlink" title="参考"></a>参考</h4><p><a href="https://docs.mongodb.com/manual/reference/limits/#restrictions-on-db-names" target="_blank" rel="noopener">官方文档</a></p>]]></content>
<summary type="html">
<h4 id="简述"><a href="#简述" class="headerlink" title="简述"></a>简述</h4><p>本文摘抄官方文档。</p>
<h4 id="Bson文件"><a href="#Bson文件" class="headerlink" tit
</summary>
<category term="MongoDB" scheme="https://sunshineuun.github.io/tags/MongoDB/"/>
</entry>
<entry>
<title>Redis-基础</title>
<link href="https://sunshineuun.github.io/2018/04/05/dis%E5%9F%BA%E7%A1%80%E4%B9%8B%E4%B8%80/"/>
<id>https://sunshineuun.github.io/2018/04/05/dis基础之一/</id>
<published>2018-04-05T08:43:09.000Z</published>
<updated>2018-04-12T02:03:57.270Z</updated>
<content type="html"><![CDATA[<h3 id="数据类型"><a href="#数据类型" class="headerlink" title="数据类型"></a>数据类型</h3><p>redis拥有五种数据类型:</p><ol><li>字符串(string) </li><li>哈希(hash)</li><li>列表(list)</li><li>集合(set)</li><li>有序集合(zset)</li></ol><h4 id="字符串"><a href="#字符串" class="headerlink" title="字符串"></a>字符串</h4><h5 id="内部编码"><a href="#内部编码" class="headerlink" title="内部编码"></a>内部编码</h5><ol><li>raw</li><li>int</li><li>embstr<h4 id="哈希"><a href="#哈希" class="headerlink" title="哈希"></a>哈希</h4><h5 id="内部编码-1"><a href="#内部编码-1" class="headerlink" title="内部编码"></a>内部编码</h5></li><li>hashtable</li><li>ziplist</li></ol><h4 id="列表"><a href="#列表" class="headerlink" title="列表"></a>列表</h4><h5 id="内部编码-2"><a href="#内部编码-2" class="headerlink" title="内部编码"></a>内部编码</h5><ol><li>linkedlist</li><li>ziplist</li></ol><h4 id="集合"><a href="#集合" class="headerlink" title="集合"></a>集合</h4><h5 id="内部编码-3"><a href="#内部编码-3" class="headerlink" title="内部编码"></a>内部编码</h5><ol><li>hashtable</li><li>intset</li></ol><h4 id="有序集合"><a href="#有序集合" class="headerlink" title="有序集合"></a>有序集合</h4><h5 id="内部编码-4"><a href="#内部编码-4" class="headerlink" title="内部编码"></a>内部编码</h5><ol><li>skiplist</li><li>ziplist</li></ol>]]></content>
<summary type="html">
<h3 id="数据类型"><a href="#数据类型" class="headerlink" title="数据类型"></a>数据类型</h3><p>redis拥有五种数据类型:</p>
<ol>
<li>字符串(string) </li>
<li>哈希(hash)</li
</summary>
</entry>
<entry>
<title>MongoDB运算符</title>
<link href="https://sunshineuun.github.io/2018/03/28/ongoDB%E8%BF%90%E7%AE%97%E7%AC%A6/"/>
<id>https://sunshineuun.github.io/2018/03/28/ongoDB运算符/</id>
<published>2018-03-28T03:30:00.000Z</published>
<updated>2018-03-28T03:41:38.898Z</updated>
<content type="html"><![CDATA[<ol><li>大于 - $gt</li><li>小于 - $lt</li><li>大于等于 - $gte</li><li>小于等于 - $lte</li><li>$ne - 不等于 </li><li>in - $in </li><li>not in - $nin</li><li>取余运算符 - $mod</li><li>$in - $all</li><li>数据的长度 - $size</li><li>判断键是否存在 - $exists,{$exists : true}</li><li>bson type来匹配一个元素的类型 - $type</li></ol>]]></content>
<summary type="html">
<ol>
<li>大于 - $gt</li>
<li>小于 - $lt</li>
<li>大于等于 - $gte</li>
<li>小于等于 - $lte</li>
<li>$ne - 不等于 </li>
<li>in - $in </li>
<li>not in - $nin<
</summary>
<category term="MongoDB" scheme="https://sunshineuun.github.io/tags/MongoDB/"/>
</entry>
<entry>
<title>Java多线程自述</title>
<link href="https://sunshineuun.github.io/2018/03/25/ava%E5%A4%9A%E7%BA%BF%E7%A8%8B%E8%87%AA%E8%BF%B0/"/>
<id>https://sunshineuun.github.io/2018/03/25/ava多线程自述/</id>
<published>2018-03-25T07:50:17.000Z</published>
<updated>2018-03-25T07:57:57.338Z</updated>
<content type="html"><![CDATA[<h4 id="为什么产生多线程"><a href="#为什么产生多线程" class="headerlink" title="为什么产生多线程"></a>为什么产生多线程</h4><p>当处于IO获取其他状态的时候,CPU会出现一定的空闲时间;此空闲时间的CPU就能利用起来。</p><h4 id="多线程带来的问题"><a href="#多线程带来的问题" class="headerlink" title="多线程带来的问题"></a>多线程带来的问题</h4><h6 id="资源竞争"><a href="#资源竞争" class="headerlink" title="资源竞争"></a>资源竞争</h6><h6 id="同步临界资源"><a href="#同步临界资源" class="headerlink" title="同步临界资源"></a>同步临界资源</h6>]]></content>
<summary type="html">
<h4 id="为什么产生多线程"><a href="#为什么产生多线程" class="headerlink" title="为什么产生多线程"></a>为什么产生多线程</h4><p>当处于IO获取其他状态的时候,CPU会出现一定的空闲时间;此空闲时间的CPU就能利用起来。<
</summary>
</entry>
<entry>
<title>Java多线程-1</title>
<link href="https://sunshineuun.github.io/2018/03/25/Java%E5%A4%9A%E7%BA%BF%E7%A8%8B-1/"/>
<id>https://sunshineuun.github.io/2018/03/25/Java多线程-1/</id>
<published>2018-03-25T05:46:05.000Z</published>
<updated>2018-03-25T07:35:50.940Z</updated>
<content type="html"><![CDATA[<p>Java 多线程模块巩固</p><h5 id="线程状态转换"><a href="#线程状态转换" class="headerlink" title="线程状态转换"></a>线程状态转换</h5><p><img src="/images/pasted-47.png" alt="upload successful"></p><hr><h5 id="yield方法"><a href="#yield方法" class="headerlink" title="yield方法"></a>yield方法</h5><p>理论上,yield意味着放手,放弃,投降。一个调用yield()方法的线程告诉虚拟机它乐意让其他线程占用自己的位置。这表明该线程没有在做一些紧急的事情。注意,这仅是一个暗示,并不能保证不会产生任何影响。</p><ol><li>Yield是一个静态的原生(native)方法 </li><li>Yield告诉当前正在执行的线程把运行机会交给线程池中拥有相同优先级的线程。</li><li>Yield不能保证使得当前正在运行的线程迅速转换到可运行的状态</li><li>它仅能使一个线程从运行状态转到可运行状态,而不是等待或阻塞状态</li></ol><hr><h5 id="线程池"><a href="#线程池" class="headerlink" title="线程池"></a>线程池</h5><h6 id="Java通过Executors提供四种线程池。"><a href="#Java通过Executors提供四种线程池。" class="headerlink" title="Java通过Executors提供四种线程池。"></a>Java通过Executors提供四种线程池。</h6><ol><li>newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。</li><li>newFixedThreadPool创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待。</li><li>newScheduledThreadPool 创建一个定长线程池,支持定时及周期性任务执行。</li><li>newSingleThreadExecutor 创建一个单线程化的线程池,它只会用唯一的工作线程来执行任务,保证所有任务按照指定顺序(FIFO, LIFO, 优先级)执行。<br>参考:<a href="">博客</a></li></ol><hr><h6 id="ExecutorService的submit与execute区别"><a href="#ExecutorService的submit与execute区别" class="headerlink" title="ExecutorService的submit与execute区别"></a>ExecutorService的submit与execute区别</h6><ol><li>接收的参数不一样submit可以接受runnable无返回值和callable有返回值;execute接受runnable无返回值</li><li>submit有返回值,而execute没有</li><li>submit方便Exception处理<br>参考:<a href="https://blog.csdn.net/chenaini119/article/details/51849222" target="_blank" rel="noopener">博客</a></li></ol><hr><h6 id="shotdown和showdownNow的区别"><a href="#shotdown和showdownNow的区别" class="headerlink" title="shotdown和showdownNow的区别"></a>shotdown和showdownNow的区别</h6><ol><li>shutdown() 方法在终止前允许执行以前提交的任务, </li><li>shutdownNow() 方法阻止等待任务启动并试图停止当前正在执行的任务。在终止时执行程序没有任务在执行,也没有任务在等待执行,并且无法提交新任务。关闭未使用的 ExecutorService 以允许回收其资源。 </li></ol><hr><h6 id="Runnable与Callable区别"><a href="#Runnable与Callable区别" class="headerlink" title="Runnable与Callable区别"></a>Runnable与Callable区别</h6><ol><li>callable用法和runnable一样,只不过调用的是call方法,该方法有一个泛型返回值类型,你可以任意指定。</li><li>runnable接口实现的没有返回值的并发编程。 </li><li>callable有返回值,runnable没有返回值。</li></ol><h6 id="synchronized"><a href="#synchronized" class="headerlink" title="synchronized"></a>synchronized</h6><ol><li><p>修饰实例方法,作用于当前实例加锁,进入同步代码前要获得当前实例的锁。</p><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">已当前实例为资源,当线程争夺的时候回去进行通过该实例。</span><br><span class="line">不同实例之间不存在资源争抢。</span><br></pre></td></tr></table></figure></li><li><p>修饰静态方法,作用于当前类对象加锁,进入同步代码前要获得当前类对象的锁。</p><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">对象锁</span><br></pre></td></tr></table></figure></li><li><p>修饰代码块,指定加锁对象,对给定对象加锁,进入同步代码库前要获得给定对象的锁。</p><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">对象锁</span><br></pre></td></tr></table></figure></li></ol><p>参考:<a href="https://blog.csdn.net/javazejian/article/details/72828483" target="_blank" rel="noopener">synchronized详解</a></p><h5 id="文献参考"><a href="#文献参考" class="headerlink" title="文献参考"></a>文献参考</h5><ol><li><a href="https://www.cnblogs.com/GarfieldEr007/p/5746362.html" target="_blank" rel="noopener">1</a></li><li><a href="https://blog.csdn.net/evankaka/article/details/51489322" target="_blank" rel="noopener">2</a></li><li><a href="http://ifeve.com/java-concurrency-thread-directory/" target="_blank" rel="noopener">Java并发性和多线程介绍目录</a></li></ol>]]></content>
<summary type="html">
<p>Java 多线程模块巩固</p>
<h5 id="线程状态转换"><a href="#线程状态转换" class="headerlink" title="线程状态转换"></a>线程状态转换</h5><p><img src="/images/pasted-47.png" a
</summary>
</entry>
<entry>
<title>中美贸易战</title>
<link href="https://sunshineuun.github.io/2018/03/24/%E4%B8%AD%E7%BE%8E%E8%B4%B8%E6%98%93%E6%88%98/"/>
<id>https://sunshineuun.github.io/2018/03/24/中美贸易战/</id>
<published>2018-03-24T05:03:02.000Z</published>
<updated>2018-03-24T05:09:39.987Z</updated>
<content type="html"><![CDATA[<p>与哥哥视频的总结记录</p><h5 id="主题:中美贸易战"><a href="#主题:中美贸易战" class="headerlink" title="主题:中美贸易战"></a>主题:中美贸易战</h5><ol><li>预计要打台海战争</li><li>美国实力比中国强,但是因为中国储备了很多外汇。其他国家不容易打金融战争,所以要打贸易战争。</li><li>如何去看新闻报道<br> 3.1 报道的内容不重要,为什么要报道比较重要,或者说报道的目的。<br> 3.2 当报道的文章太过正面,这个时候可能是政府在激励民族情怀,可能是一个战争准备。<br> 3.3 媒体让民众看起来是站在第三方角度去发表客观事实的,然而媒体只不过是政府的传话筒。平时为什么会有嘉宾在,这就是捏造第三方发表客观事实的假象。<br> 3.4 李嘉诚。</li><li>政治家都是带着目的去阐述的。我们要揣摩他的目的!</li><li>需要了解国际形势。</li><li>军备是最能体现国力的一种表现。<h5 id="总结:"><a href="#总结:" class="headerlink" title="总结:"></a>总结:</h5></li><li>提问的优雅:让自己了解清楚问题,明确自己的疑惑。</li></ol>]]></content>
<summary type="html">
<p>与哥哥视频的总结记录</p>
<h5 id="主题:中美贸易战"><a href="#主题:中美贸易战" class="headerlink" title="主题:中美贸易战"></a>主题:中美贸易战</h5><ol>
<li>预计要打台海战争</li>
<li>美国实力
</summary>
</entry>
<entry>
<title>Selenium-Error01</title>
<link href="https://sunshineuun.github.io/2018/03/20/elenuim/"/>
<id>https://sunshineuun.github.io/2018/03/20/elenuim/</id>
<published>2018-03-20T08:31:00.000Z</published>
<updated>2018-03-20T08:37:34.967Z</updated>
<content type="html"><![CDATA[<p>错误代码:<br><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">selenium.common.exceptions.WebDriverException: Message: unknown error: call function result missing 'value'</span><br><span class="line"> (Session info: chrome=65.0.3325.162)</span><br><span class="line"> (Driver info: chromedriver=2.33.506120 (e3e53437346286c0bc2d2dc9aa4915ba81d9023f),platform=Windows NT 10.0.16299 x86_64)</span><br></pre></td></tr></table></figure></p><p>百度的答案<a href="https://stackoverflow.com/questions/48609069/org-openqa-selenium-webdriverexception-unknown-error-call-function-result-miss" target="_blank" rel="noopener">传送门</a></p><p><img src="/images/pasted-46.png" alt="upload successful"></p><p>笔者的理解:<br> 是因为Chrome升级了,然后Chrom Driver的版本不支持需要下载新版。</p><p><a href="http://chromedriver.storage.googleapis.com/index.html" target="_blank" rel="noopener">下载地址</a><br>里面有说明相互对应的版本说明。</p>]]></content>
<summary type="html">
<p>错误代码:<br><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br
</summary>
</entry>
<entry>
<title>MongoDB</title>
<link href="https://sunshineuun.github.io/2018/03/18/ongoDB/"/>
<id>https://sunshineuun.github.io/2018/03/18/ongoDB/</id>
<published>2018-03-18T07:44:00.000Z</published>
<updated>2018-03-18T08:21:03.860Z</updated>
<content type="html"><![CDATA[<h4 id="更新命令"><a href="#更新命令" class="headerlink" title="更新命令"></a>更新命令</h4><h5 id="update"><a href="#update" class="headerlink" title="update"></a>update</h5><p>格式如下:<br><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">db.collection.update(criteria,objNew,upsert,multi)</span><br></pre></td></tr></table></figure></p><p>参数说明如下:<br><strong>criteria</strong>:查询条件<br><strong>objNew</strong>:update对象和一些更新操作符<br><strong>upsert</strong>:如果不存在update的记录,是否插入objNew这个新的文档,true为插入,默认为false,不插入。<br><strong>multi</strong>:默认是false,只更新找到的第一条记录。如果为true,把按条件查询出来的记录全部更新。</p><h5 id="save"><a href="#save" class="headerlink" title="save"></a>save</h5><p>格式如下:<br><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">db.collection.save(obj)</span><br></pre></td></tr></table></figure></p><p>参数说明如下:<br>obj:代表需要更新的对象,如果集合内部已经存在一个和obj相同的<strong>_id</strong>的记录,Mongodb会把obj对象替换集合内已存在的记录,如果不存在,则会插入obj对象。</p><h5 id="更新操作符号"><a href="#更新操作符号" class="headerlink" title="更新操作符号"></a>更新操作符号</h5><h6 id="inc"><a href="#inc" class="headerlink" title="$inc"></a>$inc</h6><p>用法:{$inc:{field:value}}<br>作用:对一个数字字段的某个field增加value<br>说明:只能运用在数值类型上</p><h6 id="set"><a href="#set" class="headerlink" title="$set"></a>$set</h6><p>用法:{$set:{field:value}}<br>作用:把文档中某个字段field的值设为value</p><h6 id="unset"><a href="#unset" class="headerlink" title="$unset"></a>$unset</h6><p>用法:{$unset:{field:1}}<br>作用:删除某个字段field</p><h6 id="push"><a href="#push" class="headerlink" title="$push"></a>$push</h6><p>用法:{$push:{field:value}}<br>作用:把value追加到field里。<br>说明:field只能是数组类型,如果field不存在,会自动插入一个数组类型</p><h6 id="pushAll"><a href="#pushAll" class="headerlink" title="pushAll"></a>pushAll</h6><p>用法:{$pushAll:{field:value_array}}<br>作用:用法同$push一样,只是$pushAll可以一次追加多个值到一个数组字段内。<br>说明:field只能是数组类型。</p><h6 id="addToSet"><a href="#addToSet" class="headerlink" title="$addToSet"></a>$addToSet</h6><p>用法:{$addToSet:{field:value}}<br>作用:加一个值到数组内,而且只有当这个值在数组中不存在时才增加。<br>说明:结果是append,不是add,就算存入的是数组,它也是单个值<br>举例:存入[ “A3”, “A4” ]的效果<br><figure class="highlight plain"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">[ "Michael", "A1", "A2", [ "A3", "A4" ] ]</span><br></pre></td></tr></table></figure></p><h6 id="pop"><a href="#pop" class="headerlink" title="$pop"></a>$pop</h6><p>用法:删除数组内第一个值:{$pop:{field:-1}}、删除数组内最后一个值:{$pop:{field:1}}<br>作用:用于删除数组内的一个值</p><h6 id="pull"><a href="#pull" class="headerlink" title="$pull"></a>$pull</h6><p>用法:{$pull:{field:_value}}<br>作用:从数组field内删除一个等于_value的值</p><h6 id="pullAll"><a href="#pullAll" class="headerlink" title="$pullAll"></a>$pullAll</h6><p>用法:{$pullAll:value_array}<br>作用:用法同$pull一样,可以一次性删除数组内的多个值。</p><h6 id="rename"><a href="#rename" class="headerlink" title="$rename"></a>$rename</h6><p>用法:{$rename:{old_field_name:new_field_name}}<br>作用:对字段进行重命名</p><h4 id="参考资料"><a href="#参考资料" class="headerlink" title="参考资料"></a>参考资料</h4><ul><li><a href="https://www.yiibai.com/mongodb/mongodb_quick_guide.html" target="_blank" rel="noopener">快速入门</a></li><li><a href="https://www.cnblogs.com/yu-zhang/p/5210966.html" target="_blank" rel="noopener">博客-更新命令(save,update)</a></li></ul>]]></content>
<summary type="html">
<h4 id="更新命令"><a href="#更新命令" class="headerlink" title="更新命令"></a>更新命令</h4><h5 id="update"><a href="#update" class="headerlink" title="updat
</summary>
<category term="MongoDB" scheme="https://sunshineuun.github.io/tags/MongoDB/"/>
</entry>
</feed>