- 博客(13)
- 收藏
- 关注
原创 Java内存模型
四种内存屏障:loadload:load1 loadload load2 该内存屏障使得load1对数据的装载操作先于load2以及后续的装载指令loadstore:load1 loadstore store2 使得load1对数据的装载操作先于store2以及后续的存储指令storestore:store1 storestore store2 使得store1对数据的存储先于store2以及后续...
2018-03-21 16:23:13
233
原创 String int类型对应的jvm指令
//ldc 123->astore_1String a = "123";//new->dup->ldc 1234->init->astore_2String b = new String("1234");//iconst_1->istore_3int c = 1;//bipush 100->istore 4int e = 100;//sipush 1024->invokestati
2018-03-21 10:50:43
253
原创 spring事务传播机制
spring事务传播机制1 propagation_required 支持当前事务,如果当前不存在事务,则新建一个事务2 propagation_requires_new 不论当前有没有事务,直接新建一个事务3 propagation_support 支持当前事务,如果当前存在事务,则加入该事务,如果不存在,就以非事务方式执行4 propagation_mandatory 支持当前
2018-03-19 17:12:28
369
原创 spring中的后置处理器
BeanPostProcessor,Bean的后置处理器在spring中,对bean的扩展集中在各种beanPostProcessor中,下面是一些后置处理器调用的地方以及调用方法:1、InstantiationAwareBeanPostProcessor postProcessBeforeInstantiation(beanClass, beanName)在调用doCreateBea
2018-03-19 15:44:32
2851
原创 垃圾回收的一点知识整理
垃圾回收算法:标记-清理(Mark-Sweep):先标记,在清理,存在效率和空间问题复制(copying):将空间分为Eden、from-survivor,to-survivor,每次只使用Eden和from-survivor区域,将存活下来的放入to-survivor,需要进行空间担保来应多存活数量较多的情况,适用于新生代(-XX:SurvivorRatio)标记-整理(Mark-C
2018-03-10 17:59:14
457
原创 netty的引导过程(服务端)
首先先来看一段netty的服务端代码 EventLoopGroup bossGroup = new NioEventLoopGroup(); EventLoopGroup workerGroup = new NioEventLoopGroup(); bossGroup.next(); try { Serv
2018-01-27 12:19:48
411
原创 HttpClient4.5.3 警告:Invalid cookie header 的问题解决
最近在使用HttpClient发送请求时发现经常报Invalid cookie header警告org.apache.http.client.protocol.ResponseProcessCookies processCookies警告: Invalid cookie header: "Set-Cookie: q_c1=484d1c0f82e1461790775962c93f1875|1
2018-01-18 13:37:19
17276
1
原创 数据库隔离级别与数据库锁
数据库事务隔离级别与数据库锁:在数据库中,存在四种数据库隔离级别,分别是1、read uncommited 在当前事务未提交的时候其他事务能够读到当前事务写的内容,这种隔离级别会导致脏读。其具体的加锁方式是在事务修改的时候加共享锁,这样其他事务可以读取到本数据2、read commited 在当前事务提交后,其他事务才能读到本事务写的内容,这种隔离级别可能会导致无法重复读(重复读的意思
2018-01-04 15:02:48
3217
8
原创 mybatis插入记录后获得主键id
今天做练习的时候发现了mybatis的一个坑在进行插入操作后,我们需要获得新插入记录的主键id,一般来说有两种方法 insert into s_blog (user_id, title, summary, content, draft_status, create_time, update_time) values(#{userId}, #{title}, #{summary},
2017-12-05 16:19:07
808
1
原创 线程的状态
在线程Thread类中,有一个枚举类State,列举了线程的六大状态public enum State { /** * Thread state for a thread which has not yet started. * 刚刚新建好的线程所处的状态 */ NEW, /** * Thread state f
2017-11-12 15:21:00
209
原创 关于桥接模式的理解
首先来看下桥接模式的定义:将抽象部分与实现部分分离,使它们都可以独立的变化。桥接模式中类的关系: 1、接口Implementor,接口实现类ConcreteImplementor1、ConcreteImplementor2 2、抽象类Abstraction,子类RefineAbstraction。所谓将抽象与实现分离,指的是弃用继承的方式产生对象,而采用聚合/组合的方式
2017-11-07 19:59:58
906
1
原创 java垃圾回收角度的内存分配策略
谈到垃圾回收,大家都有一种很熟悉却又很迷茫的感觉。所谓垃圾回收,就是把那些用不到的数据从内存中清除掉,从而达到释放内存的作用。#############################################################################################################垃圾回收中的算法:垃圾回
2017-09-30 15:23:07
239
原创 JAVA内存区域与内存溢出异常
一、运行时数据区JAVA运行时数据区包括程序计数器、本地方法栈、虚拟机栈、堆、方法区等,其中程序计数器、本地方法栈、虚拟机栈为线程私有内存、堆、方法区等为线程共享内存。1、程序计数器,用来记录当前线程所执行的字节码的行号指示器。此内存为JAVA虚拟机规范中唯一一个没有规定OutOfMemoryError的内存区域。2、JAVA虚拟机栈,在JAVA执行每一个方法时,虚拟机都会为其创建一个
2017-09-29 10:51:07
176
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人