SPRING02_核心注解、Bean、primary、DependsOn、Lazy、Scope、ComponentScan、详解Import、Lookup注解(二)

简介: SPRING02_核心注解、Bean、primary、DependsOn、Lazy、Scope、ComponentScan、详解Import、Lookup注解(二)

④. @Component、@Indexed、@Order


①. @Component:这个用来编写Spring/WEB应用的时候,标注在一个类上,那么这个类就自动添加到容器中


②. @Indexed:这个是Spring5.0里面新加入的一个注解,它是一个加速注解,也就是说默认Spring容器一启动的时候,所有的组件才会进行加载创建对象,如果有大量的组件经常要用到,又不想等Spring容器启动的时候才加载并创建对象,那么就可以标注@Indexed 这个注解,这样的话就相当于给组件直接生成相关的class缓存并全部放好,那么以后Spring容器一旦启动就直接能用了,就不用再走整个Spring容器的启动流程


③. @Order:这个是组件之间的顺序,设置的数字越小,优先级就会越高,一旦优先级越高就优先创建这个组件


⑤. @ComponentScan、@Conditional、@Import


①. @ComponentScan:这个大家估计都知道了,就是包扫描,可以批量扫描某一个包下的所有组件(该包和下面的子包)


②. @Conditional :这个在SpringBoot里面的核心注解,他是根据有没有满足相关条件,再来进行组件注入


③. @Import:这个是用于导入第三方的jar的,如果自己来写注解,那么这些自己写的注解只能标注在自己的类上,但是引入别人开发好的第三方包,并且这个第三方包这个源码在包里面已经压缩好了,所以就可以使用@Import 这个注解来把第三方的包里面的组件导入到容器中


⑥. @ImportResource、@Profile、@PropertySource、@PropertySources


①. @ImportResource:这个是用于导入以前的Xml配置文件


②. @Profile:这个是在SpringBoot里面的多环境激活


③. @PropertySource:这个是导入外部的properties配置文件


④. @PropertySources :跟@PropertySource的组件注解


⑦. @Autowired、@Qualifier、@Value


  • ①. @Autowired:都是组件的装配功能


  • ②. @Qualifier:都是组件的装配功能


  • ③. @Value
    获取环境变量里面的值或者是获取配置文件中的值 @Value("#{xxx}") @Value("${xxx}")
    #:可以对象调用方法
    $:代表的是一个取值



相关文章
|
1月前
|
XML Java 数据格式
SpringBoot入门(8) - 开发中还有哪些常用注解
SpringBoot入门(8) - 开发中还有哪些常用注解
49 0
|
15天前
|
XML 安全 Java
|
1月前
|
缓存 Java Spring
实战指南:四种调整 Spring Bean 初始化顺序的方案
本文探讨了如何调整 Spring Boot 中 Bean 的初始化顺序,以满足业务需求。文章通过四种方案进行了详细分析: 1. **方案一 (@Order)**:通过 `@Order` 注解设置 Bean 的初始化顺序,但发现 `@PostConstruct` 会影响顺序。 2. **方案二 (SmartInitializingSingleton)**:在所有单例 Bean 初始化后执行额外的初始化工作,但无法精确控制特定 Bean 的顺序。 3. **方案三 (@DependsOn)**:通过 `@DependsOn` 注解指定 Bean 之间的依赖关系,成功实现顺序控制,但耦合性较高。
实战指南:四种调整 Spring Bean 初始化顺序的方案
|
13天前
|
安全 Java 开发者
Spring容器中的bean是线程安全的吗?
Spring容器中的bean默认为单例模式,多线程环境下若操作共享成员变量,易引发线程安全问题。Spring未对单例bean做线程安全处理,需开发者自行解决。通常,Spring bean(如Controller、Service、Dao)无状态变化,故多为线程安全。若涉及线程安全问题,可通过编码或设置bean作用域为prototype解决。
26 1
|
19天前
|
前端开发 Java Spring
Spring MVC核心:深入理解@RequestMapping注解
在Spring MVC框架中,`@RequestMapping`注解是实现请求映射的核心,它将HTTP请求映射到控制器的处理方法上。本文将深入探讨`@RequestMapping`注解的各个方面,包括其注解的使用方法、如何与Spring MVC的其他组件协同工作,以及在实际开发中的应用案例。
35 4
|
19天前
|
前端开发 Java 开发者
Spring MVC中的请求映射:@RequestMapping注解深度解析
在Spring MVC框架中,`@RequestMapping`注解是实现请求映射的关键,它将HTTP请求映射到相应的处理器方法上。本文将深入探讨`@RequestMapping`注解的工作原理、使用方法以及最佳实践,为开发者提供一份详尽的技术干货。
58 2
|
19天前
|
前端开发 Java Spring
探索Spring MVC:@Controller注解的全面解析
在Spring MVC框架中,`@Controller`注解是构建Web应用程序的基石之一。它不仅简化了控制器的定义,还提供了一种优雅的方式来处理HTTP请求。本文将全面解析`@Controller`注解,包括其定义、用法、以及在Spring MVC中的作用。
40 2
|
22天前
|
消息中间件 Java 数据库
解密Spring Boot:深入理解条件装配与条件注解
Spring Boot中的条件装配与条件注解提供了强大的工具,使得应用程序可以根据不同的条件动态装配Bean,从而实现灵活的配置和管理。通过合理使用这些条件注解,开发者可以根据实际需求动态调整应用的行为,提升代码的可维护性和可扩展性。希望本文能够帮助你深入理解Spring Boot中的条件装配与条件注解,在实际开发中更好地应用这些功能。
26 2
|
22天前
|
JSON Java 数据格式
springboot常用注解
@RestController :修饰类,该控制器会返回Json数据 @RequestMapping(“/path”) :修饰类,该控制器的请求路径 @Autowired : 修饰属性,按照类型进行依赖注入 @PathVariable : 修饰参数,将路径值映射到参数上 @ResponseBody :修饰方法,该方法会返回Json数据 @RequestBody(需要使用Post提交方式) :修饰参数,将Json数据封装到对应参数中 @Controller@Service@Compont: 将类注册到ioc容器
|
23天前
|
XML Java 数据格式
SpringBoot入门(8) - 开发中还有哪些常用注解
SpringBoot入门(8) - 开发中还有哪些常用注解
36 2