常用注解
- @Comment (value=xxx):表示被他修饰的类被spring管理(万能注解),value相当于之前spring配置文件<bean>标签中的id or name
- @Controller (value=xxx):表示被他修饰的类被spring管理(用作controller层)
- @Server (value=xxx): 表示被他修饰的类被spring管理(用作服务层)
- @Repository (value=xxx):被他修饰的类被spring管理(用作数据仓库层)
- @Lazy(value=true):表示延迟加载
- @Scope(value="singleton"):表示是否为单例
- @Autowired:表示byName注入,如果没有就使用ByType注入
- @Qualifier:当注入的对象不止一个时,通过此注解来指定(比如使用Autowired,但是该类型是接口类型,有多个实现类,需要通过他来指定具体是哪个实现类)
- @Resource(name="xx"):功能与Autowired类似,但这个注解是Java自带的一版不推荐,技术栈不统一
- @PostConstruct:表示被spring创建出来的对象的同时,被它修饰的方法也需要执行
- @PretDestroy:表示当前类的对象被spring销毁的同时,被他修饰的方法也需要执行
- @Configuration:表示被它修饰的类是一个配置类,作用和之前配置文件一致
- @Bean:作用在方法上,表示被它修饰的方法返回的结果会注入到spring容器中
- @ComponentScan(basePackages={path}):一般放在配置类上,被它修饰的类会将该路径下的类会注入到spring容器中
- @PropertySource("classpath:xxx"):表示改路径下的文件是配置文件,从这个文件取值
- @Value:被它修饰的属性,一般从配置文件、阿波罗等地方取值