wenwan 8 years ago
parent
commit
be2d4d52e4

+ 4 - 1
README.md

@@ -1,6 +1,6 @@
 ## 技术心得
 
-===
+---
 
 有人认为编程是一门技术活,要有一定的天赋,非天资聪慧者不能及也。其实不然,笔者虽是计算机专业出身,但工作年限并不长,对于吃技术这碗饭也有一定的心得体会,虽然在专业领域精通很难,但达到入门级别甚至应付日常的工作,还是很容易的。
 
@@ -38,6 +38,7 @@
 * memcache
 * fastJson
 * log4J
+* [Apache common](open-source-framework/Apache-common.md)
 
 
 
@@ -67,3 +68,5 @@
 
 *	[HTTPS 抓包工具(charles)](http://blog.vetcafe.net/2013/12/charlesproxyiphonehttps.html)
 *	[一致性hash算法](other/一致性hash.md)
+*	[Lombok安装](http://www.blogjava.net/fancydeepin/archive/2012/07/12/382933.html)
+

BIN
basic-knowledge/img/Snip20160626_24.png


+ 1 - 0
basic-knowledge/java.md

@@ -10,6 +10,7 @@
 * 	HashMap的扩容机制
 * 	NIO
 * 	ClassLoader
+* 	[java修饰词](java修饰词.md)
 
 
 ### 进阶

+ 61 - 0
basic-knowledge/java修饰词.md

@@ -0,0 +1,61 @@
+## java修饰词
+
+---
+
+#### 1.volatile介绍
+
+
+volatile是java最轻量级的同步机制。
+
+**规则:**
+
+*	线程可见性。当一个线程修改了volatile修饰的变量后,无论是否加锁,其它线程都可以立即看到最新的修改。
+*	禁止指令重排序优化。
+
+
+#### 2.synchronized介绍
+
+线程安全,锁区域内容一次只允许一个线程执行,通过锁机制控制。
+
+```
+     一、当两个并发线程访问同一个对象object中的这个synchronized(this)同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块。
+
+     二、然而,当一个线程访问object的一个synchronized(this)同步代码块时,另一个线程仍然可以访问该object中的非synchronized(this)同步代码块。
+
+     三、尤其关键的是,当一个线程访问object的一个synchronized(this)同步代码块时,其他线程对object中所有其它synchronized(this)同步代码块的访问将被阻塞。
+```
+
+
+* 同步方法
+
+```
+public synchronized void method(int i);  
+```
+
+每个类实例对应一把锁,类实例中所有的synchronized方法共用这一把锁,锁的范围有点大。
+
+
+* 同步块
+
+相比上面的同步方法,锁的范围可缩小。
+
+
+```
+synchronized(syncObject) {  
+//允许访问控制的代码  
+}  
+```
+
+其中的代码执行前必须获得对象 syncObject 锁,可以针对任意代码块,且可任意指定上锁的对象,故灵活性较高。
+
+#### 3.final介绍
+
+如果修饰变量标识为常量,运行过程中会将值直接替换到变量这个占位符中(避免根据内存地址再次查找这层消耗);如果修改方法,方法不允许被覆盖;修饰类,类不允许被继承。
+
+基础类型,如String,不允许修改。
+
+集合,如Map、List,引用地址不允许改,但可以put、get等操作。
+
+java8编译会检查,如果是修改常量,会编译失败。
+
+![image](img/Snip20160626_24.png)

+ 15 - 0
open-source-framework/Apache-common.md

@@ -0,0 +1,15 @@
+## Apache common
+
+===
+### pom依赖
+
+```
+
+
+```
+
+#### 常用工具类:
+
*	DigestUtils工具类
+
	可以为快照对象生成一个32字符的摘要,可以有效对快照去重,节省资源空间
*	BeanUtils 
+
	利用java反射机制为对象赋值


##### 参考资料:
+
http://www.cnblogs.com/jackyrong/archive/2006/10/15/529599.html

+ 2 - 2
open-source-framework/redis.md

@@ -1,11 +1,11 @@
-## redis
+## redis缓存
 
 ---
 
 #### 与memcache最大区别:
 
 * 持久化存储
-* 提供了更多类型,满足不同业务需求
+* 提供了多种数据结构,满足不同业务需求
 
 
 ####不同类型长度限制:

+ 1 - 1
project-management/程序员素养.md

@@ -2,7 +2,7 @@
 
 ---
 
-工作中肯定会遇到各种棘手问题,需要我们去查资料、认真思考,不断充实自己,提高自己。象大地之神盖亚的儿子——乌拉诺斯,每次跌倒都能站起来,并且拥有比之前更大的能量。
+在日常工作中肯定会遇到各种棘手问题,需要我们去查资料、认真思考,不断充实自己,提高自己。象大地之神盖亚的儿子——乌拉诺斯,每次跌倒都能站起来,并且拥有比之前更大的能量。
 
 
 #### 心得体会: