面试用-常用注解

bash 复制代码
@Configuration 注意由ConfigurationClassPostProcessor来处理

ConfigurationClassPostProcessor执行这个后置处理
ConfigurationClassParser.parse执行这个方法里面会解析很多注解。

1、@Component                 对于Component也是一样递归调用parse方法,一层层解析
2、@PropertySources
3、@PropertySource
4、@ComponentScans
5、@ComponentScan    执行ConfigurationClassPostProcessor后置处理器时,判断配置类是否包含@ComponentScan注解,ComponentScan注解里面就包含很多属性,把扫描出来的类,转成BD,并且扫描出来的每个类都执行一次parse方法,因为扫描出来的类上面可能也包含了@ComponentScan等多个注解
6、@Import     例如:ImportBeanDefinitionRegistrar、ImportSelector
7、@ImportResource  
8、@Bean 
java 复制代码
@Service          其实只是包装了下@Component所以处理逻辑和@Component是一样的。
@Autowired        处理类AutowiredAnnotationBeanPostProcessor
@Resource         处理类CommonAnnotationBeanPostProcessor

@EnableTransactionManagement 开启事务

@Transactional 由切面里面的切点来扫码是否添加事物
关于切面相关的可以点这

@Async异步处理相关注解《@Async-源码分析》

@Aspect

@EnableAsync 开启切面

切面相关可以看这个

@MapperScan

通过导入Import导入MapperScannerRegistrar类,MapperScannerRegistrar实现了ImportBeanDefinitionRegistrar接口,通过ClassPathMapperScanner类扫描@MapperScan配置的路径,找到所有的Mapper.java类,转成DB,并设置BeanClass类型是MapperFactoryBean.class,注册到Spring里面去。

@Controller

@RequestMapping

AOP代理对象的注解有

@Configuration

@Async

@Transactional

@Aspect

相关推荐
时间的拾荒人22 分钟前
Qt 多线程详解:从 QThread 到实战
开发语言·qt·面试
海绵宝宝转agent22 分钟前
MySql高频面试八股开源笔记总结
mysql·面试·开源
小呆呆6661 小时前
副业搞起来,小说,漫画,漫剧的成本优化思路
前端·后端·面试
lsc_blog2 小时前
远程和居家办公的经历,技术简历上怎么摆
面试·职场和发展·重构·pdf·求职招聘
时间的拾荒人3 小时前
Qt 事件机制全解析:从事件处理到事件过滤器
开发语言·qt·面试
(Charon)5 小时前
【C++面试】vector底层原理:扩容、拷贝移动与迭代器失效
c++·面试
考研保研资料分享6 小时前
电气工程保研经验:夏令营失利后上岸上交,科研追问与九推复习(2024)
面试
时间的拾荒人6 小时前
Qt 窗口系统详解:从菜单栏到对话框的完整指南
开发语言·qt·面试
无忧.芙桃7 小时前
位图妙用:512MB 实现 40 亿整数的存在性查询
c语言·c++·面试·哈希算法
ShineWinsu7 小时前
对于Redis:Steam、Geospatial、Hyperloglog、Bitmap、Bitfield类型的解析
数据库·c++·redis·分布式·缓存·面试·zset