资源目录中有两个属性配置文件。在服务层中,您可以使用@valueannotation获取值。在控制器层中,只有一个文件可以获取值,而另一个文件只能获取键(@valueannotation将返回键而不是null,如果它没有获取值)。解决了这个问题后,我觉得自己受益匪浅,于是决定发帖。
<context:属性占位符位置="类路径:application.properties“ignoreunsolvable=”true“/>
基于xml配置,我们使用属性占位符将配置文件注入容器。问题是两个配置文件都被注入到spring容器中,其中一个也被注入到springmvc容器中。控制器属于springmvc容器,服务属于spring容器。因此,如果我们需要在控制器层获得另一个配置文件,那么需要将配置文件的值引入springmvc容器。
spring配置中的bean可以直接引用其他bean的属性值,为当前bean的属性赋值。它还可以直接调用其他bean的方法来获取返回值,为当前bean的属性赋值,并可以传递参数。这样,就不需要将需要获取属性值的bean注入bean。