Spring注释和XML配置

时间:2012-03-22 06:39:10

标签: java spring

我正在阅读Spring 3.0文档,我来到了句子 -

  

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

接下来我想到了一个问题: 如果我在bean中使用注释(如@Service("myService")),现在我使用的是另一个bean,它使用“myService”,并且“myService”将通过XML配置注入。

这会有用吗?我试过但它给了我

  

BeanCreationException(设置bean属性'myService'时无法解析对bean'myService'的引用)

后来,我经历了这个问题Wiring Spring bean through annotations and xml context,但在解决方案中,它被告知“只是保留所有注释的字段,并且它们会被自动注入。” (我没试过这个解决方案)

但是,如果我想指定所有带注释的字段,比如我在上面指定了@Service注释,该怎么办? 有什么建议??

2 个答案:

答案 0 :(得分:0)

你需要像下面那样自动装配你的构造函数......

@Autowired(required=true)
public UserService(DataSource dataSource){
    this.userDS = new UserDS(dataSource);
}

因此,在上面的代码中,DataSource会自动注入UserService

答案 1 :(得分:0)

我找到答案,效果很好。实际上我忘了在xml配置中添加标签。我们需要在每个配置文件中添加此标记,即如果您已为服务层bean编写了配置文件,请为服务层注释bean添加标记。类似于dao和控制器层。