随笔分类 - spring6探析
摘要:# Spring6 探析之 Bean 的创建于销毁 ## 介绍 控制 bean 的创建与销毁有两类方法 - 在配置类中使用 @Bean 注解的 initMethod 和 destroyMethod 参数 - 使用 JSP250 规范中的 @PostConstruct 和 @PreDestroy 注解
阅读全文
摘要:# Spring6 探析之 @Primary 注解 ## 介绍 使用 @Autowired 注入,如果存在多个相同类型的 bean,Spring 就会因为不知道使用哪一个 Bean 而报错,此时有两种解决方法: 1. 在 @Autowired 上使用 @Qualified 指定类 2. 使用 @Pr
阅读全文
摘要:# Spring6 探析之@Lazy 注解 ## 介绍 在实际项目中,如果我们加载了过多的实例或配置,会导致 Spring 的启动速度非常慢,@Lazy 注解就是为了解决这种问题。 @Lazy 注解采用懒汉模式的单例模式,Spring 容器启动时,被标记的实例不会创建,只有在第一次使用时才会创建实例
阅读全文
摘要:# Spring6 探析之@Conditional 注解 ## 介绍 我们写业务逻辑时,会用到 if-else 条件,@Conditional 注解可以通过**条件判断**是否要将 Bean 注入到 IOC 容器中,它可以**标记在类和方法上**,我们先看一下源码吧 ```java @Target(
阅读全文
摘要:# Spring6 探析之@DependsOn 注解 ## 介绍 @DependsOn 注解可控制 bean 实例的初始化顺序,可以利用它手动控制 beanB 在 beanA 之后完成创建 下面是 @DependsOn 的源码 ```java @Target({ElementType.TYPE, E
阅读全文
摘要:# Spring6 探析之@PropertySource 注解 ## 介绍 @PropertySource 注解用于加载配置类,在使用 Spring 时,我们可以使用 @PropertySource 注解将自定义的配置文件加载到 Spring 中,方便我们的自定义的开发 下面是 @PropertyS
阅读全文
摘要:# Spring6 探析之@Import 注解 ## 简介 @Import 注解与 @Bean注解的作用相同,都可以将实例注册到IOC中,但区别是,@Import 只能作用在类上,并且使用@Import时,不需要再使用@Configuration注解 下面是 @Import 的源码 ```java
阅读全文
摘要:# Spring6 探析之@Bean 注解 ## 介绍 @Bean 是spring的常用注解,他可以标记在方法和注解上,可以将方法的返回值放在IOC容器中,它又以下特点 - 单例 - 可指定bean的名称 - 可控制bean的初始化与销毁方法 让我们看一下@Bean的源码吧 ```java @Tar
阅读全文
摘要:# Spring6 探析之@Configuration 注解 ## 介绍 @Configuration 注解大家都不陌生,该注解有以下特点 - 必须在类上使用 - 能够将被注解的类加载到IOC容器里 - 能够将类中被@Bean注解标记的方法加载到IOC容器里 @Configuration 有一些参数
阅读全文
摘要:Spring Bean 作用域 主要了解 singleton 和 prototype 就好了,他们分别使用 单例模式 和 原型模式 | 来源 | 说明 | | | | | singleton | 默认作用域,一个BeanFactory有且仅有一个实例(并不是在JVM进程里是唯一的) | | prot
阅读全文