java – 在Spring-MVC中访问应用程序属性

前端之家收集整理的这篇文章主要介绍了java – 在Spring-MVC中访问应用程序属性前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
Spring-MVC的新功能.

我想在.properties文件中存储两个属性(uploadFolder = ..,downloadFolder = ..)
在HomeController类中访问它(由MVC模板自动创建).

你能指导我怎么样..

1)使用上面的内容创建了一个app.properties文件,并将其放在/ src / main / resources下.这是正确的还是应该在/ webapp / resources下?

2)以下面的方式在servlet-context.xml中放置一个bean.它是否正确?

  1. <beans:bean id="messageSource"
  2. class="org.springframework.context.support.ResourceBundleMessageSource">
  3. <beans:property name="basename" value="app" />
  4. </beans:bean>

3)现在如何在Java控制器中访问它?

4)如何在JSP中访问这些?

我不知道我会多么感谢你.

解决方法

有几种不同的方法可以做到这一点.我做了以下事情.在app环境中:
  1. <util:properties id="myProps" location="classpath:app.properties" />

确保文件顶部有以下内容以包含“util”命名空间:

  1. xmlns:util="http://www.springframework.org/schema/util"
  2. xsi:schemaLocation= "... http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd"

我通常把我的属性文件放在src / main / resources中.只要他们在课堂上,你就会很好.然后,在您的控制器中,您可以使用以下命令注释您的字段/方法

  1. @Controller
  2. public class MyController {
  3.  
  4. @Value("#{myProps['uploadFolder']}")
  5. private String uploadFolder
  6.  
  7. @Value("#{myProps['downloadFolder']}")
  8. private String downloadFolder
  9.  
  10. @RequestMapping("myPage")
  11. public String loadPage(ModelMap m) {
  12. m.addAttribute("uploadFolder",uploadFolder);
  13. m.addAttribute("downloadFolder",downloadFolder);
  14. return "myPage";
  15. }
  16.  
  17. public void setUploadFolder(String uploadFolder) {
  18. this.uploadFolder = uploadFolder;
  19. }
  20. public void setDownloadFolder(String downloadFolder) {
  21. this.downloadFolder = downloadFolder;
  22. }
  23. }

然后,在你的JSP中:

  1. Download folder: ${downloadFolder} <br/>
  2. Upload folder: ${uploadFolder}

HTH.如果您有任何疑问,请告诉我.

猜你在找的Java相关文章