spring 在运行时刷新 i18n

发布于 10-31 07:01 字数 295 浏览 4 评论 0原文

我们有一个 Spring 应用程序,其中我们将 i18n 消息和密钥存储在属性文件 app_ar.properties & 中。 app_en.properties

我们还使用 reloadableResourceBundleMessageSource 作为消息源。

现在我需要编辑其中一个属性文件并重新加载它,因此我编辑该文件并清除 reloadableResourceBundleMessageSource 缓存。

在我的机器上一切正常,但在测试服务器或生产服务器上它不起作用?

会有什么问题吗???

We have a spring application in which we store the i18n messages and keys in a properties files app_ar.properties & app_en.properties

Also we use the reloadableResourceBundleMessageSource as a message source.

now I need to edit one of the properties files and reload it so I edit the file and clear the reloadableResourceBundleMessageSource cache.

On my machine every thing is going fine but on the test server or the production server it does not work?

what would be the problem ????

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

东走西顾2024-11-07 07:01:53

如 javadoc 中所述:

“与ResourceBundleMessageSource相比,该类支持通过“cacheSeconds”设置重新加载属性文件,也支持通过编程方式清除属性缓存。由于应用程序服务器通常会缓存从类路径加载的所有文件,因此有必要存储资源其他地方(例如,在 Web 应用程序的“WEB-INF”目录中),否则类路径中文件的更改将不会反映在应用程序中。

As described in the javadoc:

"In contrast to ResourceBundleMessageSource, this class supports reloading of properties files through the "cacheSeconds" setting, and also through programmatically clearing the properties cache. Since application servers typically cache all files loaded from the classpath, it is necessary to store resources somewhere else (for example, in the "WEB-INF" directory of a web app). Otherwise changes of files in the classpath will not be reflected in the application."

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文