spring
IMHB
造轮子真好玩,即使目前还是低级别的轮子
展开
-
spring源码学习(1)
网上有很多spring的源码分析教程,也有很多类图,但是spring的源码特别复杂,一层嵌套一层,刚开始看,很难受,越看越懵,所以我买了本书《spring源码深度解析》。跟着书的内容来学习吧。首先是spring读取配置文件,spring有一个专门读取配置的较为顶级的接口-Resource。假设我们使用ClassPathResource进行resource的实例化。//得到resource...原创 2018-07-29 15:34:04 · 241 阅读 · 0 评论 -
spring源码学习(2)
前面总算是找到了bean的加载与注册的入口了,下面就是应该是真正的操作了吧。private void parseDefaultElement(Element ele, BeanDefinitionParserDelegate delegate) { if (delegate.nodeNameEquals(ele, IMPORT_ELEMENT)) { //import标签 ...原创 2018-07-29 20:29:07 · 124 阅读 · 0 评论 -
spring源码学习(5)
今天就接着进入createBean()方法,去看一下spring是如何生成bean的。protected Object createBean(String beanName, RootBeanDefinition mbd, Object[] args) throws BeanCreationException { if (logger.isDebugEnabled()) { log...原创 2018-08-04 16:23:17 · 363 阅读 · 0 评论 -
spring源码学习(1-5 总结)
对前面5篇的文章进行总结一下,因为是第一次看spring的源码,说实话,看起来确实很复杂,但是也能有一点收获,我可能探究的不够深入,但是至少了解了大致的流程。那么接下来就大致总结一下流程。(1)首先是通过Resource进行配置文件的读取,得到流。(2)对配置文件进行校验,验证通过过后之后得到解析之后的document。(3)将document转换为持有xml信息的beanDefini...原创 2018-08-05 13:17:08 · 383 阅读 · 0 评论 -
spring源码学习(6)
前面了解了xmlBeanFactory,那么接下来,我们就去看一下真正常用的类:classPathXmlApplicationContext。classPathXmlApplicationContext拥有比xmlBeanFactory更多的功能。ClassPathXmlApplicationContext factory=new ClassPathXmlApplicationConte...原创 2018-08-05 15:22:23 · 133 阅读 · 0 评论 -
spring源码学习(3)
前面学习完了spring的xml解析,将所要生成的bean的信息保存在beanDefinitionHolder里面,那么接下来就该学习一下spring中bean的加载了。那么我们通常获得bean的方式是通过getBean("beanName")来获得的。那么我们就从入口开始。UserEntity bean = (UserEntity) factory.getBean("user");@...原创 2018-07-31 22:21:41 · 136 阅读 · 0 评论 -
spring源码学习(4)
前面一节,我们看了一下getBean的大致流程,首先是转化beanName,然后根据beanName去缓存当中获取,如果没有的话,那我们就会通过factory去生成指定域的bean,放入缓存当中。那么我们接着就深入了解一下每一步的详细流程。那么今天,就来看一下我们到底应该如何得到bean。(1)缓存当中获取Object sharedInstance = getSingleton(be...原创 2018-08-01 23:24:05 · 230 阅读 · 0 评论 -
spring源码学习(7)
第六篇暂时放置,先不进行讲解,等后面再看一遍的时候再来重新编写。那么我们就来讲一下Spring的AOP,至于AOP是什么,可以自行去百度一下,这里就不多做介绍了。protected Object doCreateBean(final String beanName, final RootBeanDefinition mbd, final Object[] args) throws Be...原创 2018-08-08 22:07:01 · 239 阅读 · 0 评论 -
springboot+ssm+mysql 读写分离+动态修改数据源
一.我们最开始先实现读写分离(其实和多数据源差不多,只是多数据源的定义更加广泛,读写分离只是其中的一个应用而已)这里就不怎么探讨mysql的主从的一个原理了,我直接贴出一个博客,可以去看看,大致了解一下mysql主从。我学东西喜欢先跑一次,如果成功了,我就再深入研究了,其实大体的逻辑还是很简单,在service层做一个dataSource的选择,(网上有很多在dao层做,这是不合道理的,因...原创 2018-10-29 13:09:04 · 495 阅读 · 0 评论