
spring
文章平均质量分 82
酒醉梦醒
JAVA
展开
-
mybatis实现数据库读写分离
ps:本文解决mybatis实现数据库读写分离,项目基础是ruoyi-vue方案一:自定义一个注解@DataSource, 利用aop切该注解,切了后设置注解@DataSource的值到ThreadLocal里面,再利用AbstractRoutingDataSource的determineCurrentLookupKey方法去选择数据源优点:通过注解方式,修改简便缺点:dao上配置注解,有点麻烦public enum DataSourceType{ /** * 主库, writ原创 2021-05-09 21:15:57 · 1159 阅读 · 2 评论 -
spring cloud应用篇eureka+ribbon+feign
文章目录spring cloud应用篇eureka+ribbon+feign项目文件链接eureka集群搭建ribbonfeignCAP定理spring cloud应用篇eureka+ribbon+feign项目文件链接eureka项目eureka集群搭建首先我的项目结构如下server7001server7002server7003userorderoder2money...原创 2020-03-06 17:42:34 · 615 阅读 · 0 评论 -
spring boot热部署原理
文章目录spring boot热部署原理类加载器双亲委派全盘委托例子一:从磁盘读取class文件例子二:热更新例子三:例二的优化springboot热部署源码spring boot热部署原理类加载器BootStrapClassLoader,简称B启动类加载器,由c++实现,负责加载JAVA_HOME/lib目录的文件,他只按照文件名识别,名字不符合的类库即使放到lib下也不会被加载Ext...原创 2020-03-02 21:55:45 · 2148 阅读 · 0 评论 -
spring boot自动配置原理
文章目录spring boot自动配置原理前言自动配置原理DispatcherServletAutoConfiguration@AutoConfigureAfter注解@EnableConfigurationProperties注解总结spring boot自动配置原理前言阅读本文最好懂得spring源码,springmvc源码知识,以及零配置mvc+内嵌tomcat,servlet的spi...原创 2020-03-01 03:01:40 · 644 阅读 · 0 评论 -
springmvc源码深度解析
文章目录springmvc源码深度解析工程代码入口及重要方法getHandler方法getHandlerAdapter方法及适配器模式handle方法及视图解析总结springmvc源码深度解析工程代码建议先精读springmvc零配置原理pom文件 依赖<dependency> <groupId>org.springframework</gro...原创 2020-02-11 22:39:46 · 1040 阅读 · 0 评论 -
springmvc零配置
文章目录springmvc零配置mvc零配置servlet3新特性内嵌tomcatspringmvc零配置spring之前都是采用spring.xml,springmvc.xml,web.xml三个配置文件完成web项目配置,但是随着注解开发的应用升级,逐渐抛弃了这种繁重的xml风格开发,本文主要介绍mvc零配置原理以及spring boot的雏形mvc零配置官方给我们如下代码替换掉web...原创 2020-02-04 16:34:44 · 783 阅读 · 0 评论 -
手写spring ioc(三)
文章目录手写spring ioc(三)前言推断构造器手写spring ioc(三)前言前面已经完成了ioc基本功能,也解决了循环依赖,现在ioc剩下的最大一块就是推断构造器,这一块比较难写,涉及到spring扩展点BeanPostProcessor, 这个扩展点可以说是艺术般的存在,不仅解耦,而且可扩展性极强,代码也清晰明了,笔者先声明一点,推断构造器笔者是模仿spring framewor...原创 2019-12-13 13:27:07 · 326 阅读 · 0 评论 -
手写spring ioc(二)
文章目录手写spring ioc(二)本篇介绍循环依赖解决方案总结手写spring ioc(二)本篇介绍本篇主要解决属性之间的循环依赖的问题循环依赖解决方案在我们探讨解决方案之前先看一个基于ioc(一) 的循环依赖的例子,看看会发生什么public class CBean { private ABean aBean;}public class Test { De...原创 2019-12-12 11:46:30 · 445 阅读 · 0 评论 -
手写spring ioc(一)
文章目录手写spring ioc(一)首记手写spring ioc(一)首记spring源码断断续续学了近半年,算是小成,不过也是只学了冰山一角,好在ioc基本理清了,于是想出一个手写ioc的系列博客,不知道要写多久,反正尽量写TODO...原创 2019-12-11 16:23:28 · 463 阅读 · 0 评论 -
剑指spring源码(五)---循环依赖
文章目录剑指spring源码(五)---循环依赖spring的循环依赖是什么spring循环依赖图示spring循环依赖代码分析剑指spring源码(五)—循环依赖循环依赖问题是一个非常热门,非常有意思的话题,每次想到这个问题都会很高兴,第一次接触循环引用还是看java虚拟机的时候,如何判断一个对象已死?计数器法虽简单但却存在ABA问题,采用可达性分析算法才算解决了这个问题。如今学习sprin...原创 2019-12-07 16:18:54 · 517 阅读 · 0 评论 -
剑指spring源码(四)
文章目录剑指spring源码(四)前言ioc之getBeanioc之循环引用后记剑指spring源码(四)前言距离上一篇spring源码系列文章已经三个月了,这段时间有点懒,更新频率大大下降了,甚至几度想要放弃这个系列,因为感觉真的不是我能掌控的,spring太精妙了,经过前面几篇博客的铺垫,我们这篇来聊一聊getBean时期spring都干了什么,都有哪几个后置处理器,都是干嘛的,还有循环...原创 2019-11-19 17:37:46 · 578 阅读 · 0 评论 -
spring零配置+websocket聊天室
spring零配置+websocket聊天室效果图私聊xxx用户lry用户群聊lry用户xxx用户ll用户聊天面板gitpethttps://github.com/lrydl/pet.git原创 2019-10-29 12:08:06 · 380 阅读 · 1 评论 -
剑指spring源码(二)补充篇之ImportSelector
文章目录剑指spring源码(二)补充篇之ImportSelectorImportSelector例子源码解析剑指spring源码(二)补充篇之ImportSelectorImportSelector例子配置类@ComponentScan("com.lry")@Configuration//加了全配置注解会被cglib增强@Import(MyImportSelector.class)...原创 2019-07-23 19:30:35 · 416 阅读 · 0 评论 -
剑指spring源码(二)补充篇之ImportBeanDefinitionRegistrar
文章目录剑指spring源码(二)补充篇之ImportBeanDefinitionRegistrar例子源码mybatis如何利用ImportBeanDefinitionRegistrar优雅支持spring剑指spring源码(二)补充篇之ImportBeanDefinitionRegistrar例子TODO源码mybatis如何利用ImportBeanDefinitionRegist...原创 2019-07-23 19:36:57 · 1698 阅读 · 1 评论 -
spring事务的传播方式
文章目录文章简介:文章简介:在写spring几个有趣的小甜点中的事务失效的时候原创 2019-06-21 15:24:47 · 3914 阅读 · 0 评论 -
spring几个有趣的小甜点
spring几个有趣的小甜点文章简介aop日志,保存登录用户后用自定义注解取出用户,事件编程,事务失效,异步失效,spring中怎么使用callable提高数百倍效率,编程事务和注解事务的使用场景。。。aop日志在你的项目加上下面的代码,com.demo.controller包下的所有类在执行前都会打一条日志别忘了 aop:aspectj-autoproxy@Component@As...原创 2019-06-20 14:29:17 · 797 阅读 · 0 评论 -
剑指spring源码(二)
文章目录剑指spring源码(二)前言理解源码的前提环境源码理解TODO完整流程分析总结剑指spring源码(二)前言在我上一篇博客剑指spring源码(一)中介绍了spring的bd注册过程,本文主要讲的是第三行代码refresh()中的invokeBeanFactoryPostProcessors(beanFactory);这一行代码,顾名思义,这行代码的作用是执行bean工厂的后置处理...原创 2019-07-22 18:08:30 · 678 阅读 · 0 评论 -
剑指spring源码(三)
文章目录剑指spring源码(三)前言注册BeanPostProcessors剑指spring源码(三)前言在我的spring源码系列文章已经写了注册bd和执行BeanFactory的后置处理器,spring容器到这里干的事情有注册了5个root bd,reader,并且解析了我们配置类appConfig。但是还有很多事情没做,比如注册BeanPostProcessors,实例化单例对象,循...原创 2019-08-19 14:07:47 · 760 阅读 · 0 评论 -
剑指spring源码(一)
文章目录剑指spring源码(一)入口第一行代码this()第二行代码register(annotatedClasses)剑指spring源码(一)入口配置类 @ComponentScan("com.lry") @Configuration public class AppConfig { }入口类 AnnotationConfigApplicationContex...原创 2019-07-13 16:20:04 · 885 阅读 · 2 评论