1.@Autowired
用来装配bean,都可以写在字段上,或者方法上。默认情况下必须要求依赖对象必须存在,如果要允许null值,可以设置它的required属性为false,例如:@Autowired(required=false);
该注解是通过类型来注入,如果一个类型有多个bean值的时候,会造成无法选择具体注入哪一个的情况,这时候我们就需要配合着注解@Qualifier(name=“”)去使用,告诉spring具体去装配哪个对象!
2.@Resource
@Request的作用相当于@Autowired,只不过@Autowired按byType自动注入,而@Resource默认按byName自动注入@Resource有两个属性是比较重要的,分别是name和type,Spring将@Resource注解的name属性解析为bean的名字,而type则解析为bean的类型。所以如果使用name属性,则使用byName的自动注入策略,而使用type属性时则使用byType自动注入策略。如果既不指定name也不指定type属性,这时将通过反射机制使用byName自动注入策略。
3.@Componnent
该注解泛指组件,当组件不好归类的时候,我们可以用这个注解进行标注。
4.@Repository
用于标注数据访问组件,即DAO组件。
5.@Service
用于标注业务层组件,说白了就是把这个类注入到spring配置中。
6.@Controller
标识该类是SpringMVC controller处理器,用来创建处理http请求的对象。