我正在重构旧的Web应用程序。处理Spring MVC项目中的应用程序设置
在这个新版本中,我使用的是Spring 3.x,我想重新考虑应用程序设置的整个部分。在旧的应用程序中,我使用了一个使用数据库表和专用DAO的自定义方法。
我需要在运行时更改系统设置,所以我认为properties
文件不是正确的选项。我也在考虑java.util.prefs
API。
你能提出一个解决这个问题的通用方法吗? Spring有没有解决这个问题的一些实用工具?
我正在重构旧的Web应用程序。处理Spring MVC项目中的应用程序设置
在这个新版本中,我使用的是Spring 3.x,我想重新考虑应用程序设置的整个部分。在旧的应用程序中,我使用了一个使用数据库表和专用DAO的自定义方法。
我需要在运行时更改系统设置,所以我认为properties
文件不是正确的选项。我也在考虑java.util.prefs
API。
你能提出一个解决这个问题的通用方法吗? Spring有没有解决这个问题的一些实用工具?
我终于决定,对我来说最好的解决方案是使用Apache Commons Configuration API,并存储在数据库应用程序设置,使用DatabaseConfiguration
。
我在前面有同样的问题。我最后的方法是使用Spring的Property占位符,但是从数据库加载这个对象,而不是从属性文件加载。 http://pure-essence.net/2011/02/10/spring-loading-properties-from-database-with-a-twist/
唯一的问题是,如果你想改变应用程序的运行时,你需要刷新ApplicationContext,这可能有点棘手。
ApplicationContext ctx = new FileSystemXmlApplicationContext("Application- context.xml");
// Your application code here
((ConfigurableApplicationContext)ctx).refresh();
您是否考虑过JMX Beans? – shazin
你有没有考虑过JNDI? – Raedwald