05 2023 档案

摘要:32位虚拟机MarkWord分布 64位虚拟机MarkWord分布 MarkWord是java对象头的一部分,还包括Klass Word和数组长度。 MarkWord主要包含对象hashcode、偏向线程ID(ThreadID)、偏向锁状态(0,1 1为是偏向锁)、锁标志位(01,00,10,11 阅读全文
posted @ 2023-05-25 09:56 DreamCatt 阅读(950) 评论(0) 推荐(0)
摘要:一、锁与锁的升级 在JDK1.6后java对锁做了很多优化,JDK最开始是synchronized属于重量级锁,即一个线程抢到锁后其余线程都处于阻塞状态,这样在线程状态切换过程或造成很大开销。优化之后有了四种状态:无锁状态、偏向锁、轻量级锁、重量级锁。升级顺序由偏向锁->轻量级锁->重量级锁过程不可 阅读全文
posted @ 2023-05-24 17:19 DreamCatt 阅读(63) 评论(0) 推荐(0)
摘要:1.使用说明 https://github.com/liuhr/my2sql2../my2sql -user root -password 'JKgl$1666' -port 3306 -work-type rollback -start-file binlog.001405 -start-date 阅读全文
posted @ 2023-05-18 14:43 DreamCatt 阅读(195) 评论(0) 推荐(0)
摘要:直接列代码应该都能看懂,用了lombok的log注解@Slf4j @Configuration @Slf4j public class MessageQueueConfig implements CommandLineRunner { @Bean @Qualifier("producer") @Pr 阅读全文
posted @ 2023-05-17 17:06 DreamCatt 阅读(24) 评论(0) 推荐(0)
摘要:通过Filter和重写HttpServletRequest包装类来实现 HttpServletRequest包装类 public class RequestWrapper extends HttpServletRequestWrapper { private final byte[] request 阅读全文
posted @ 2023-05-16 10:22 DreamCatt 阅读(243) 评论(0) 推荐(0)
摘要:上代码基础是使用Servlet3的request.startAsync开启异步任务,然后可以将这个请求的request,response封装后得到AsyncContext然后存储,然后另外的请求去对这个asyncContext做处理然后主动返回数据(调用complete方法)写了个工具类如下 @Co 阅读全文
posted @ 2023-05-11 18:23 DreamCatt 阅读(38) 评论(0) 推荐(0)
摘要:首先梳理JVM结构,放图 JVM(hotspot版本)由堆、虚拟机栈、本地方法栈、方法区、程序计数器组成。其中堆和方法区是线程共享的,剩下的几个部分都是线程私有。 堆:线程共享,堆用来存放java中创建的对象示例,因此设计的占用内存最大。同时也是垃圾收集器(GC)的重点关照对象,主要分为两大部分,新 阅读全文
posted @ 2023-05-08 17:16 DreamCatt 阅读(15) 评论(0) 推荐(0)
摘要:@Autowired是Spring框架中的注解,@Resource是Java中定义的注解来自于JSR-250规范提案。 两者依赖查找顺序不同,@Autowired是先根据类型找再根据名称找依赖,@Resource是现根据名称找依赖,如果找不到再根据类型找。@Autowired只有一个参数可用(req 阅读全文
posted @ 2023-05-06 15:15 DreamCatt 阅读(70) 评论(0) 推荐(0)
摘要:共几种初始化方式 public class TestBean implements InitializingBean , CommandLineRunner , DisposableBean , ApplicationRunner { private String x; @Override publ 阅读全文
posted @ 2023-05-04 11:50 DreamCatt 阅读(105) 评论(0) 推荐(0)