【问题标题】:What is the best approach for resource bundle in Spring MVC?Spring MVC 中资源包的最佳方法是什么?
【发布时间】:2016-01-30 20:23:37
【问题描述】:

我正在使用 Spring MVC 4(在 Tomcat 下)构建一个新的 Web 应用程序,我需要知道在我的 Web 应用程序中存储消息源的最佳方法是什么。

实际上,我正在考虑使用 Spring 属性文件来管理所有标签,但我有一些问题要问:

  1. 如果我在我的属性文件中添加一条新消息,我是否需要在 Tomcat 上重新部署我的 webapp(在 Tomcat 上重新启动应用程序)?
  2. 数据库驱动资源是否是解决此问题的最佳方法?在这种情况下,我可以避免在 Tomcat 上重新部署 webapp(因为我的消息资源是在我的数据库中管理的)...

谢谢!!

【问题讨论】:

  • 如果使用了属性文件,你应该清理并运行你的 web 应用程序(使用属性文件是我的选择)。注意:修改完成后只需要保存文件,tomcat会自动启动。
  • 谢谢!但有一件事:当我在 tomcat 上上传带有更改的战争时,tomcat 将重新启动...在这种情况下,网站将关闭几分钟...对吗?
  • 我认为这个链接会帮助你stackoverflow.com/questions/6583502/…

标签: java spring-mvc tomcat resourcebundle


【解决方案1】:

要回答您的问题,是的,如果您的消息发生变化,您将不得不重新部署。资源包被构建并编译到类文件中,并且除非您重新构建和重新部署,否则保持不变。如果您发现需要无需重新部署即可更改的动态消息,那么最好使用数据库之类的东西。这是不寻常的,但是如果您无法关闭应用程序,那么可以,将它们放入数据库中以便您可以重新部署它们。

【讨论】:

  • 谢谢! :) 但是有没有解决方案可以在不关闭应用程序的情况下更新我的 webapp?例如:用户登录了我的 webapp,我决定重新部署我的应用程序,因为我更改了一些消息。那么,当我在tomcat上上传新战时,用户在使用过程中会收到服务器错误……对吗?
  • 也许我不清楚我是如何说出我的解决方案的。使用数据库来保存您的值,这样您就不必重新启动。这就是我所说的[“最好使用数据库之类的东西。这很不寻常,但是如果您无法关闭应用程序,那么可以,将它们放入数据库中以便您可以重新部署它们。”] 在我的上面的解决方案。因此,为了确认,最好使用数据库解决方案。确保您没有使用只读取一次数据的单例模式。每次都读取数据库,以便您能够即时更新值。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-02
  • 2016-02-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多