@Autowired
Spring 2.5 引入了 @Autowired 注释,它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。 通过 @Autowired的使用来消除 set ,get方法。
加在成员变量之上可以省略get set方法。
但是首先得现在Spring配置文件中配置org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor
@Resource 注解被用来激活一个命名资源(named resource)的依赖注入,在JavaEE应用程序中,该注解被典型地转换为绑定于JNDI context中的一个对象。 Spring确实支持使用@Resource通过JNDI lookup来解析对象,默认地,拥有与@Resource注解所提供名字相匹配的“bean name(bean名字)”的Spring管理对象会被注入。
@Resource(name="dataSource")public void setDataSource(DataSource dataSource) {this.dataSource = dataSource;}Spring会向加了注解的setter方法传递bean名为“dataSource”的Spring管理对象的引用。
private DataSource dataSource;@Resourcepublic void setDataSource(DataSource dataSource) {this.dataSource = dataSource;}
直接使用@Resource注解一个域(field)同样是可能的。通过不暴露setter方法,代码愈发紧凑并且还提供了域不可修改的额外益处。正如下面将要证明的,@Resource注解甚至不需要一个显式的字符串值,在没有提供任何值的情况下,域名将被当作默认值。
@Resourceprivate DataSource dataSource; // inject the bean named ‘dataSource‘
时间: 2024-10-19 08:57:21