- 博客(8)
- 收藏
- 关注
原创 进程与线程面试相关知识点总结--持续更新
直接上脑图啦!!!!!!!!!希望对你们有所帮助!祝大家早日拿到心仪的offer!!需要xmind文件的留一下邮箱呀!
2021-05-10 20:37:50
129
原创 Spring-Bean的生命周期以及创建过程
Bean的创建过程(简洁版本!)1. BeanDefinitionReader 加载全部的Bean信息(会将bean信息存在ThreadLocal,防止多线程情况下出现错误)2. 执行BeanFactoryPostProcessor 执行对应的前置处理器(Bean信息的处理)3. Bean对象实例化(通过反射进行实例化)4. Bean对象的属性填充 (单例情况下,这里才会出现循环依赖问题)5. 如果实现了Aware接口则会进行调用6. BeanPostProcessor后置处理器的前置方法执行
2021-04-18 20:19:04
427
2
原创 redis_cell限流模块的使用-docker启动-java集成
Redis-cell限流模块在java中的基本使用基本介绍Redis-cell模块是Redis4.0提供的一个限流模块,该模块使用了漏斗算法,提供了原子的限流指令,唯一的一条指令就是cl.throttle 唯一的指令 cl.throttle zedomi:reply 15 30 60 1 漏斗容量15,每60s最多30次(漏水速率) 返回值:0 运行 1 拒绝 15 漏斗容量capacity 14 漏斗剩余空间 left_quota -1 被拒绝了,多长时间后重试(
2021-01-30 04:04:28
544
1
原创 Springboot下myabtis update delete等无法刷新二级缓存
起因:今天在加上mybatis二级缓存的时候,发现update delete方法都无法刷新缓存,仔细查了一下,网上很多方法都没有用,然后突然想到@Transactional和二级缓存会有冲突,于是我把事务去掉,发现刷新缓存生效再仔细排查了一下,发现是传播属性造成的,将supports改成required,就可以解决了解决方法:传播属性详解:required:方法A调用调用时,没有事务新建一个事务,当在方法A调用另外一个方法B的时候,方法B将使用相同的事务,;如果方法B发生异常需要数据回滚的时候,
2020-12-30 18:00:54
530
原创 Spring-boot的自动配置以及自定义一个starter
这几天认真看了一遍springboot的自动配置原理,写一篇笔记整理一下,也希望可以帮助一起努力的小伙伴们!首先,写一个自定义的starter开始自定义starter这是一些spring自动配置使用到的一些基本注解,解释一下 @Configuration //指定这个类是一个配置类 @ConditionalOnXXX //在xx条件成立的情况下自动配置类生效 //例如@ConditionalOnWebApplication web应用环境下生效 @Bean
2020-12-12 16:33:40
170
原创 zookeeper集群配置搭建及拒绝连接问题
zookeeper集群配置1. 下载zookeeper包,解压2. cd /usr/local/zookeeper/conf //我的zookeeper是放在/usr/local下的,视自己的情况而定3. mv zoo_sample.cfg zoo.cfg //将配置文件改名为zoo.cfg4. 修改zoo.cfg文件指定dataDir 以及 dataLogDir (路径可以自己指定,但是dataDir需要有对应的文件夹)zoo.cfg文件最下面,需要添加节点 (此处添加了两
2020-11-25 23:54:21
1973
原创 关于final修饰符的一些小坑
关于final修饰符的一些小坑 今天在测试JUC包的CyclicBarrier方法的时候,遇到一个关于jfinal的问题 import java.util.concurrent.CyclicBarrier;public class CyclicBarrierDemo { public static void main(String[] args) { CyclicBarrier cyclicBarrier = new CyclicBarrier(7,()-&g
2020-11-23 20:51:12
222
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人