@Value没有注入其他包

时间:2016-03-30 11:29:26

标签: spring spring-mvc gradle spring-4

我在Spring中定义了一个属性源,我试图加载类路径中存在的属性文件

308 = 256 + 32 + 16 + 4
  

我的prod.properties文件有1个条目

     

DATABASE_NAME = proddb_123

现在在test()中,bean打印为proddb_123

我面临的两个问题是

  1. 我在另一个包中有另一个类,我正在尝试 注入它

    @ Value(" $ {DATABASE_NAME}")私人字符串DATABASE_NAME;

    但这个价值始终是" $ {DATABASE_NAME}"

  2. 我有不同的gradle项目,比如webapplication-gradle就是其中之一 其中定义了@PropertySouce配置 像storage-gradle这样的项目。我可以注入任何DATABASE_NAME吗? 存储 - gradle项目中存在的课程。

1 个答案:

答案 0 :(得分:0)

在您要注入@Value($ {DATABASE_NAME}&#34;)的其他类中,您还必须使用@PropertySource注释。另一种选择是删除@PropertySource注释,并在applicaiton-context.xml中定义一个类org.springframework.beans.factory.condig.PropertyPlaceholderConfigurer的bean,并为属性位置列表添加类路径的值:prod.properties < / p>