sri*_*lla 6 java spring spring-mvc
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>
Run Code Online (Sandbox Code Playgroud)
3)现在如何在Java控制器中访问它?
4)如何在JSP中访问这些?
我不知道我会多么感谢你.
ste*_*son 20
有几种不同的方法可以做到这一点.我做了以下事情.在app环境中:
<util:properties id="myProps" location="classpath:app.properties" />
Run Code Online (Sandbox Code Playgroud)
确保文件顶部有以下内容以包含"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"
Run Code Online (Sandbox Code Playgroud)
我通常把我的属性文件放在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;
}
}
Run Code Online (Sandbox Code Playgroud)
然后,在你的JSP中:
Download folder: ${downloadFolder} <br/>
Upload folder: ${uploadFolder}
Run Code Online (Sandbox Code Playgroud)
HTH.如果您有任何疑问,请告诉我.
| 归档时间: |
|
| 查看次数: |
21645 次 |
| 最近记录: |