摘要:
如果生活没有了理想,跟咸鱼有什么区别!! 阅读全文
摘要:
一.semaphore信号量,底层也是基于AQS 使用: /** * 可以理解为控制某个资源最多有多少个线程同时执行,(比如洗手间,并行与排队) * 如果满了只能等待直到其它资源释放(可以理解为并发量控制) * @author Binglong * @date 2018-11-12 */ publi 阅读全文
摘要:
22.本地存根 消费者通过创建实现一个服务接口的实例,可以在执行远程调用前拿到远程调用的代理实例,进而可以在远程调用前、后添加一些操作,在出现异常后进行一些容错处理。 这个使用场景,可以调用前作数据参数校验、做ThreadLocal缓存(这个线程操作多次调用这个服务,而且结果是一样的,就可以缓存起来 阅读全文
摘要:
ClassLoader是什么 ClassLoader中文类加载器,java编写出来的是.java文件,然后编译成.class文件,而ClassLoader就是把class文件加载到jvm内存中;但jvm启动时,通过不同的类加载器,动态的加载class文件;java比较重要的三类加载器Bootstra 阅读全文
摘要:
线程的创建 Java线程可以通过实现Runnable接口、Callable接口或继承Thread类进行创建。 实现Runnable接口实例 可以使用Runnable接口实现多线程,Runnable接口实现类必须实现run()方法,而且可以通过Thread类实例化,使用start()方法启动线程。例如 阅读全文
摘要:
mysql安装 1.添加用户 groupadd mysql useradd -r -g mysql mysql 2.路径授权 切到mysql目录 cd /usr/local/mysql 修改当前目录拥有者为mysql用户 chown -R mysql:mysql ./ 3.初始化 安装数据库 bin 阅读全文
摘要:
0.总概 1.SqlSessionFactory在mybatis只要创建一次; import com.suntek.vdm.gw.util.AESEncipher; import org.apache.commons.lang.StringUtils; import org.apache.ibati 阅读全文
摘要:
禁止指令重排 把 instance = new Instance() 分为三步 分配内存, 初始化对象、对象指向内存地址 第二步发生指令重排3在2前执行 问题所在 保证可见性( 一个线程对volatile变量的修改,能够立刻被其他线程所见) 有一个全局的状态变量 open: boolean open 阅读全文
摘要:
设计模式-模板设计模式(行为) 模板设计模式:如人到餐厅吃饭分为步骤①:点餐,步骤②:吃饭,步骤③:买单,其中一三步骤大多是相同的,步骤二每个人吃什么东西是不同的。于是就把三步封装一个抽象类,有个所有步骤的行为方法,每个人到餐厅吃饭就继承这个类,实现自己的方法。 public abstract cl 阅读全文
摘要:
面向大海,春暖花开 来自网友的解析: Enhancer可能是CGLIB中最常用的一个类,和Java1.3动态代理中引入的Proxy类差不多(如果对Proxy不懂,可以参考这里)。和Proxy不同的是,Enhancer既能够代理普通的class,也能够代理接口。Enhancer创建一个被代理对象的子类 阅读全文