在 Spring 中,尽管使用XML配置文件可以实现 Bean 的装配工作,但如果应用中有很多的 Bean 时,会导致XML配置文件过于臃肿,给后续的维护和升级带来一定的困难. 为此, Spring 。提供了对Annotation(注解)技术的全面支持。
首先认识一下常用注解的作用:
@Component:用于描述Spring中的Bean,它是一个泛化的概念,仅仅表示一个组件。
@Repository:用于将数据访问层(DAO)的类标识为Spring中的Bean。
@Service:用于将业务层中的类标识Spring中的Bean。
@Autowired:用于对Bean的属性变量、属性的setter方法及构造方法进行标注,配合对应的注解处理器完成Bean的自动配置工作。
@Resource:其作用与Autowired作用一样。@Resource中有两个重要属性:name和type。Spring将name属性解析为Bean实例名称,type属性解析为Bean实例类型。
@Qualifier:与@Autowired注解配合使用,会将默认的按Bean类型装配修改为按Bean的实例名称装配,Bean的实例名称由@Qualifier注解的参数指定。
需要注意的是在原来使用基于XML的装配时的XML配置文件有一些变化,例如:
在使用基于Annotation装配方式时,XML配置文件代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
</beans>