【发布时间】:2012-11-09 15:30:51
【问题描述】:
我在文档中找不到这个:
假设我有一个 ReloadableResourceBundleMessageSource,如果我为刚刚添加到属性文件的属性调用 getMessage(),使用另一个进程,这是否会强制重新加载,因为该属性尚不存在(未缓存),还是会抛出异常?
是否必须等待下一次 cacheRefresh 才能访问该属性?
【问题讨论】:
标签: java spring internationalization
我在文档中找不到这个:
假设我有一个 ReloadableResourceBundleMessageSource,如果我为刚刚添加到属性文件的属性调用 getMessage(),使用另一个进程,这是否会强制重新加载,因为该属性尚不存在(未缓存),还是会抛出异常?
是否必须等待下一次 cacheRefresh 才能访问该属性?
【问题讨论】:
标签: java spring internationalization
它会抛出异常,直到缓存超时。文件的最后修改时间戳在refreshProperties() 中进行评估,但这仅在缓存超时后发生。
如果这是一个 Web 应用程序,我建议创建一个调用 clearCache() 的 Web 服务。然后,您的外部进程可以编写新的属性文件并调用服务以及时强制刷新。
【讨论】: