简单了解Spring Bean常用注解的装配
作者:周逸航
这篇文章主要介绍了简单了解Spring Bean常用注解的装配,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
基于注解的装配
在Spring框架中,尽管使用XML配置文件可以很简单地装配Bean,但如果应用中有大量的Bean需要装配,会导致XML配置文件过于庞大,不方便以后的升级与维护,因此更多的时候推荐开发者使用注解(annotation)的方式去装配Bean。
在Spring框架中定义了一系列的注解,下面介绍集中常用的注解。
@Component
该注解是一个泛化的概念,仅仅表示一个组件对象(Bean),可以作用在任何层次上。
@Repository
该注解用于将数据访问层(DAO)的类标识为Bean,即注解数据访问层Bean,其功能与@Component相同。
@Service
该注解用于标注一个业务逻辑组件类(Service层),其功能与@Component相同。
@Controller
该注解用于标注一个控制器组件类(Spring MVC的Controller),其功能与@Component相同。
@Autowired
该注解可以对类成员变量、方法及构造方法进行标注,完成自动装配的工作。通过使用@Autowired来消除setter和getter方法。默认按照Bean的类型进行装配。
@Resource
该注解与@Autowired的功能一样,区别在于该注解默认是按照名称来装配注入的,只有当找不到与名称匹配的Bean时才会按照类型来装配注入;而@Autowired默认按照Bean的类型进行装配,如果想按照名称来装配注入,则需要和@Qualifier注解一起使用。
@Qualifier
该注解与@Aitowired注解配合使用。当@Autowired注解需要按照名称来装配注入时需要和该注解一起使用,Bean的实例名称由@Qualifier注解的参数制定。
在上面几个注解中,虽然@Repository、@Service和@Controller等注解的功能与@Component注解相同,但为了使类的标注更加清晰(层次化),在实际开发中推荐使用@Repository标注数据访问层(DAO层)、使用@Service标注业务逻辑层(Service层)、使用@Controller标注控制器层(控制层)。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。