源码
文章平均质量分 93
TheStrongBull
这个作者很懒,什么都没留下…
展开
-
Springboot-自动配置原理分析
@SpringBootApplication 我们在使用SpringBoot的时候都要添加这个注解,这个注解里面还包含了其他注解,完成了自动配置的功能;我们跟进去看一下 使用@Import注解导入了一个类, AutoConfigurationImportSelector 上一篇博客介绍了SpringBoot的启动流程,在SpringBoot启动Spring容器过程中就会对@Import注解做处理; 如果大家想看Spring关于@Import, 实现了DeferredImportSelector接口的处理原创 2021-05-12 00:04:20 · 143 阅读 · 0 评论 -
springBoot 启动原理解析
java -jar 怎么启动SpringBoot?? 我们打包SpringBoot 项目时,需要使用打包的插件,此时会在打包的jar 文件下, 存在 /META-INF/MANIFEST.MF 文件,来看下这个文件的内容; Main-class: 是java -jar 命令真正调用的类 Start-Class: 是由自己编写的SpringBoot入口类 有没有小伙伴疑惑,这里为什么不直接使用 我们自己编写的入口呢? 我把main-class 改成我们自己编写的入口后,再启动会提示 找不到类的异.原创 2021-05-10 16:54:11 · 293 阅读 · 0 评论 -
spring-mybatis 整合原理剖析
spring-mybatis的基本使用 1.创建mapper接口,mapper.xml文件 2.配置相关信息,配置如下图 3.调用 SqlSessionFactoryBean SqlSessionFactoryBean 实现了 FactoryBean, InitializingBean 这两个接口; 依据对Spring的了解,去观察相关的方法; getObject() 返回了一个SqlSessionFactory的实例, 那么我们可以断定这个类就是用来生成SqlSessionFactory对象的了;原创 2021-05-08 16:02:24 · 268 阅读 · 0 评论 -
Spring源码-SpringMVC
启动流程 一般使用SpringMVC都需要在Web.xml中配置这几个参数,下面来追踪一下具体的代码逻辑; ContextLoaderListener 由于web项目的启动是由Tomcat启动的, 不清楚会先调用这个类的哪一个方法,所以我找了一个看起来重要的方法打断点,再追踪它的调用栈, 可以发现在启动时由tomcat调用了contextInitialized()方法;我们主要关注initWebApplicationContext()方法; 在ContextLoaderListener的static{}原创 2021-04-28 17:22:14 · 105 阅读 · 0 评论 -
Spring源码-AOP
AOP基本概念 面向切面编程(Aspect-oriented Programming 简称AOPAOP) ,是相对面向对象编程(Object-oriented Programming 简称OOP)的框架,作为OOP的一种功能补充. OOP主要的模块单元是类(class)。而AOP则是切面(aspect)。切面会将诸如事务管理这样跨越多个类型和对象的关注点模块化(在AOP的语义中,这类关注点被称为横切关注点(crosscutting))。 切面(Aspect): 指关注点模块化,这个关注点可能会横切多原创 2021-04-23 09:30:14 · 110 阅读 · 0 评论