
spring
文章平均质量分 88
小小小金鱼
只要学不死,就往死里学!!!
展开
-
Spring Bean生命周期源码解析
介绍目前大部分的 Java 互联网项目,都是用 Spring作为基础框架,管理bean,融合其他框架。Spring Bean生命周期和我们日常开发密不可分,我们虽然可能不太了解原理,但每天都会用,且作为面试的重点、重灾区,让我们一探究竟。我们众知的Spring Bean生命周期包含实例化、填充属性、初始化,这也是狭义上的Bean生命周期。由于Spring Bean生命周期源内容较多,本文以较粗的粒度剖析源码,从spring启动到bean创建完成的过程,其他细节内容后期专门讲解。源码解析容器启动与包原创 2021-05-07 17:43:09 · 586 阅读 · 0 评论 -
Spring与Mybatis整合源码解析
介绍目前大部分的 Java 互联网项目,都是用 Spring MVC + Spring + MyBatis 搭建平台的。使用 Spring IoC 可以有效的管理各类的 Java 资源,达到即插即拔的功能;通过 Spring AOP 框架,数据库事务可以委托给 Spring 管理,消除很大一部分的事务代码,配合 MyBatis 的高灵活、可配置、可优化 SQL 等特性,完全可以构建高性能的大型网站。在 Spring 环境中使用 MyBatis 也更加简单,节省了不少代码,甚至可以不用 SqlSessio原创 2021-03-23 11:19:35 · 291 阅读 · 1 评论 -
Spring系列之@Autowired源码解析
11原创 2021-02-03 19:32:00 · 1433 阅读 · 2 评论 -
Spring系列之生命周期回调
生命周期回调方法Spring在容器初始化bean之后(完成依赖注入后)和销毁前都提供了回调的方法,我们称之为生命周期的回调方法。Spring中提供了三种方式来完成生命周期的回调。官网解释直接看Spring的官网,在 Combining Lifecycle Mechanisms处有关于生命周期回调的介绍,具体如下图:从Spring2.5开始,有三个控制bean生命周期行为的选项:1、InitializingBean和DisposableBean回调接口2、自定义init()和destroy()方原创 2021-01-19 16:20:26 · 1186 阅读 · 0 评论 -
Spring系列之BeanDefinition
什么是BeanDefinition官网解释直接看Spring的官网,在 Bean Overview处有关于BeanDefinition的介绍,具体如下图:翻译下大体意思为:springioc容器管理一个或多个bean。这些bean是使用提供给容器的配置元数据创建的。在容器本身中,这些bean定义表示为BeanDefinition对象,其中包含以下元数据:1、包限定类名:通常是所定义bean的实际实现类。2、Bean行为配置元素,它说明Bean在容器中的行为(范围、生命周期回调等)。3、对be原创 2021-01-19 10:57:08 · 835 阅读 · 0 评论 -
Spring系列之手写自定义的@Enable*注解
神奇的@Enable*注解在我们日常开发普通的spring-framework项目过程中@Enable用的不是很多,但在SpringBoot开发过程,我们经常会遇到@Enable开始的好多注解,比如@EnableWebMvc、@EnableEurekaServer、@EnableAsync、@EnableScheduling等,今天我们就来分析下这些注解到底是如何工作的,并写手自定的@Enable注解。@Enable*实现的原理以@EnableWebMvc为例,先看其源码@Retention(Ret原创 2021-01-15 11:05:32 · 861 阅读 · 0 评论 -
Spring系列之常用注解
Spring系列之常用注解注解好处1、XML配置起来有时候冗长,此时注解可能是更好的选择,简化了XML配置;2、注解相对于XML的另一个好处是类型安全的,XML只能在运行期才能发现问题,注解在开发阶段则可以发现问题。常见注解用于创建bean对象:此类注解主要注解在类上。@Component 把普通类注入到容器中,表示注解的类交给Spring管理,需要Spring为这个类创建bean,等同于XML文件中配置,属性:value 用于指定bean的id,当不写时,默认值为类名的驼峰命令由此注解衍生原创 2021-01-12 17:42:16 · 353 阅读 · 0 评论 -
Spring系列之@Import
Spring系列之@Import@Import简介@Import表示用来导入配置类或者一些需要前置加载的类.。@Import支持 三种方式1.带有@Configuration的配置类(4.2 版本之前只可以导入配置类, 4.2版本之后 也可以导入 普通类)2.ImportSelector 的实现3.ImportBeanDefinitionRegistrar 的实现导入@Configuration的配置类1、代码结构见上图,RootConfig和OtherConfig在两个目录中//Com原创 2021-01-13 11:34:17 · 562 阅读 · 0 评论