Spring - 基于注解的配置



从Spring 2.5版本开始,可以使用注解配置依赖注入。因此,无需使用XML描述Bean的连接,可以通过在相关的类、方法或字段声明中使用注解,将Bean配置移动到组件类本身。

注解注入在XML注入之前执行。因此,对于通过两种方法连接的属性,后者配置将覆盖前者。

默认情况下,Spring容器不会启用注解装配。因此,在使用基于注解的装配之前,需要在Spring配置文件中启用它。如果您想在Spring应用程序中使用任何注解,请考虑以下配置文件。

<?xml version = "1.0" encoding = "UTF-8"?>

<beans xmlns = "http://www.springframework.org/schema/beans"
   xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
   xmlns:context = "http://www.springframework.org/schema/context"
   xsi:schemaLocation = "http://www.springframework.org/schema/beans
   http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
   http://www.springframework.org/schema/context
   http://www.springframework.org/schema/context/spring-context-3.0.xsd">

   <context:annotation-config/>
   <!-- bean definitions go here -->

</beans>

配置<context:annotation-config/>后,您可以开始为代码添加注解,以指示Spring应自动将值连接到属性、方法和构造函数。让我们来看几个重要的注解,了解它们是如何工作的:

序号 注解及描述
1 @Required

@Required注解应用于Bean属性setter方法。

2 @Autowired

@Autowired注解可以应用于Bean属性setter方法、非setter方法、构造函数和属性。

3 @Qualifier

@Qualifier注解与@Autowired一起使用,可以通过指定要连接的确切Bean来消除歧义。

4 JSR-250注解

Spring支持基于JSR-250的注解,包括@Resource、@PostConstruct和@PreDestroy注解。

广告