Spring注解解决属性中的自动注入

@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;
@Resource
public void setDataSource(DataSource dataSource) {
this.dataSource = dataSource;
}
直接使用@Resource注解一个域(field)同样是可能的。通过不暴露setter方法,代码愈发紧凑并且还提供了域不可修改的额外益处。正如下面将要证明的,@Resource注解甚至不需要一个显式的字符串值,在没有提供任何值的情况下,域名将被当作默认值。
@Resource
private DataSource dataSource; // inject the bean named 'dataSource'
原文地址:https://www.cnblogs.com/dobestself-994395/p/4295565.html