【发布时间】:2011-06-30 03:52:14
【问题描述】:
我是 Spring 框架的新手,我正在开发一个必须是多语言的 Web 应用程序。
转换后的值在数据库中,我不希望每次渲染视图时都从数据库中选择值。
我们的想法是从应用程序的某个地方获取它们。所以,我想在我的应用程序启动时加载这些值,但我不知道它们的确切位置和放置位置。
感谢您的帮助!
【问题讨论】:
标签: spring spring-mvc internationalization
我是 Spring 框架的新手,我正在开发一个必须是多语言的 Web 应用程序。
转换后的值在数据库中,我不希望每次渲染视图时都从数据库中选择值。
我们的想法是从应用程序的某个地方获取它们。所以,我想在我的应用程序启动时加载这些值,但我不知道它们的确切位置和放置位置。
感谢您的帮助!
【问题讨论】:
标签: spring spring-mvc internationalization
我找到了解决方案。我在春天像这样创建了一个 bean:
public class DictionaryAccessor implements ServletContextAware, InitializingBean{
@Resource
private DictionaryServices dictionaryServices;
protected ServletContext context;
@Override
public void setServletContext(ServletContext servletContext) {
context = servletContext;
}
@Override
public void afterPropertiesSet() throws Exception {
logger.debug("initializing dictionary");
loadDictionary();
logger.debug("done with dictionary");
}
DictionaryAccessor 将在我的应用程序启动时加载。在loadDictionary 方法中,我将我的值作为属性放在ServletContext 对象中。
在我的 jsps 中,我创建了自己的标签并访问了翻译,或者在 .zul 文件中我从我的 tld 访问了一个函数。
【讨论】: