如何在spring应用程序中将属性文件保留在战争之外

时间:2015-09-08 13:30:26

标签: java spring tomcat properties

我尝试使用以下示例sample code

在我的spring应用程序中实现可重新加载的消息资源
  1. 但我不知道如何以及何时实例化类Message。我应该在spring.xml中将其声明为bean吗?

  2. 如何调用方法setMessageSource?

  3. BUNDLE_NAME =" com.sample.project.core.ui.resources.messages"的意义何在?如何在应用程序中使用它。

  4. 如果您对这些问题有任何解决方案,请退回。

    提前致谢。

2 个答案:

答案 0 :(得分:0)

  1. 您可以将该类声明为@configuration类。然后确保扫描类的包,以便Spring在启动时发现配置。

  2. 在该示例中,只要需要重新加载bundle,就会“手动”完成对setMessageSource的调用。您需要实施策略以在适当时调用方法。

  3. 捆绑名称遵循i18n标准。基本上,您的消息包通常会在文件夹com / sample / project / core / ui / resources / messages

  4. 下找到

答案 1 :(得分:0)

可以部署爆炸战争。它只是一个拉链,所以把unziped版本放在app容器中。要么改变构建以进行ecploded战争,要么不熟悉只需使用7zip“提取”战争到新文件夹然后将该文件夹放入tomcat或其他适当的webapps文件夹的app容器中。 jsut确保WEB-INF文件夹位于展开的应用程序的主文件夹下面

表示文件夹结构:

tomcat
   -conf
   -bin
   -webapps 
      -yourApp
        -WEB-INF

然后您可以轻松编辑属性文件。但需要记住保留属性文件的副本,以防您部署新版本的应用程序。很高兴在prod-conf或其他文件夹下将它们保存在源代码管理中。