Spring-MVC 的新手。
我想在 .properties 文件中存储两个属性(uploadFolder=..、downloadFolder=..)
在 HomeController 类(由 MVC 模板自动创建)中访问它。
你能指导我如何..
1)用上面的内容创建一个app.properties文件并将其放置在/src/main/resources下。这是正确的还是应该放在 /webapp/resources 下?
2) 按以下方式在 servlet-context.xml 中放置一个 bean。它是否正确?
<beans:bean id="messageSource"
class="org.springframework.context.support.ResourceBundleMessageSource">
<beans:property name="basename" value="app" />
</beans:bean>
3) 现在我如何在 Java 控制器中访问它?
4) 如何在 JSP 中访问这些?
我不知道我会多么感谢你。
有几种不同的方法可以做到这一点。我执行以下操作。在应用程序上下文中:
<util:properties id="myProps" location="classpath:app.properties" />
确保文件顶部包含以下内容以包含“util”命名空间:
xmlns:util="http://www.springframework.org/schema/util"
xsi:schemaLocation= "... http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd"
我通常将属性文件放在 src/main/resources 中。只要它们在类路径上,就很好。然后,在您的控制器中,您可以使用以下方式注释您的字段/方法:
@Controller
public class MyController {
@Value("#{myProps['uploadFolder']}")
private String uploadFolder
@Value("#{myProps['downloadFolder']}")
private String downloadFolder
@RequestMapping("myPage")
public String loadPage(ModelMap m) {
m.addAttribute("uploadFolder", uploadFolder);
m.addAttribute("downloadFolder", downloadFolder);
return "myPage";
}
public void setUploadFolder(String uploadFolder) {
this.uploadFolder = uploadFolder;
}
public void setDownloadFolder(String downloadFolder) {
this.downloadFolder = downloadFolder;
}
}
然后,在您的 JSP 中:
Download folder: ${downloadFolder} <br/>
Upload folder: ${uploadFolder}
HTH。如果您有任何疑问,请告诉我。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)