注解具体分类如下:
1、模式注解
@Repository 数据仓储模式注解
@Component 通用组件模式注解
@Service 服务模式注解
@Controller Web 控制器模式注解
@Configuration 配置类模式注解:这是 Spring 3.0 添加的一个注解,用来代替 applicationContext.xml 配置文件,所有这个配置文件里面能做到的事情都可以通过这个注解所在类来进行注册。
2、装配注解
@ImportResource 替代 XML 元素<import>,如果有些通过类的注册方式配置不了的,可以通过这个注解引入额外的 XML 配置文件,有些老的配置文件无法通过 @Configuration
方式配置的非常管用。
@Import 用来引入额外的一个或者多个 @Configuration
修饰的配置文件类。
@componentScan 这是 Spring 3.1 添加的一个注解,用来代替配置文件中的 component-scan
配置,开启组件扫描,即自动扫描包路径下的 @Component
注解进行注册 bean 实例到 context 中。另外,@ComponentScans
是可重复注解,即可以配置多个,用来配置注册不同的子包。
3、依赖注入注解
@Autowired Bean 依赖注入,支持多种依赖查找方式
@Qualifier 细粒度的@Autowired 依赖查找
@Resouece Bean 依赖注入,仅支持名称依赖查找方式
4、Bean 自定义注解
@Bean 替代 XML 元素<bean>
@DependsOn 替代 XML 属性<bean depends-on="..."/>
@Lazy 替代 XML 属性<bean lazy0init="true|falses"/>
@Primary 替代 XML 元素<bean primary="true|false"/>
@Role 替代 SML 元素<bean role="..."/>
@Lookup 替代 XML 属性<bean lookup-method="...">
5、条件装配注解
@Profile 配置化条件装配
@Conditional 编程条件装配
6、配置属性注解
@PropertySource 配置属性抽象 PropertySource
@PropertySources @PropertySource集合注解
7、生命周期回调注解
@PostConstruct 替换 XML 元素<bean init-method="..."/>或 InitializingBean
@PreDestroy 替换 XML 元素<bean destroy-method="..." />或 DisposableBean
8、注解属性注解
@AliasFor 别名注解属,实现复用的目的
9、性能注解
@Indexed 提升 spring 模式注解的扫描效率
参考:
https://blog.csdn.net/huangdingsheng/article/details/93769375
https://mp.weixin.qq.com/s?__biz=MzI3ODcxMzQzMw==&mid=2247487381&idx=2&sn=89de186873960e5a1f0f90904c2e7cef&chksm=eb538aa3dc2403b58263218dca94cb18cf9006d6e7ba87f0e9a260ac542c29ebf2dbe96ac8e1&scene=21#wechat_redirect