有没有办法自动重新加载Spring资源文件? 我想找到一种在运行时更改配置xml的简单方法。 Xml文件超出了classpath文件夹。
有什么想法吗?
THX:)
答案 0 :(得分:4)
如果您想要避免重新部署服务器以更改xml配置,则可以检查JRebel http://zeroturnaround.com/jrebel/。
答案 1 :(得分:2)
如果是要刷新的应用竞赛,请使用ConfigurableApplicationContext.refresh()或更具体地针对网络环境AbstractRefreshableWebApplicationContext。你可以使用context:property-placeholder来查找它。
答案 2 :(得分:0)
创建自己的ResourceBundle接口扩展,并使用它来查找字符串而不是Spring。这样,您可以控制重新加载等内容。
答案 3 :(得分:0)
是
Spring提供ReloadableResourceBundleMessageSource可以通过cacheSeconds设置重新加载属性文件。它支持*.properties
格式的属性文件和Properties.loadFromXML()使用的XML格式
如果您的xml文件采用其他格式,则必须通过扩展ReloadableResourceBundleMessageSource来创建自己的资源加载器,并通过覆盖其loadProperties(Resource resource, String filename)来实现解析XML文件的逻辑。