jstl和i18n:语言选择和db

问题描述:

我必须在JSP/Servlet中构建一个多语言网站。jstl和i18n:语言选择和db

我考虑了国际化JSTL,我已经有些一般性的问题:

1)是否有可能与JSTL处理都用手语言选择(例如,通过下拉菜单或链接)和自动语言识别?

2)如果大部分字符串是动态的(从数据库中检索),更好的方法是什么?

是否有可能用手处理语言选择(例如通过下拉菜单或链接)和自动语言识别?

是的。另见How to internationalize a Java web application?


有什么更好的方法,如果字符串的大部分是动态的(从数据库中检索)?

你需要创建一个自定义ResourceBundle.Control你由Filter在请求范围内注入。这个过滤器应该基本上接管<fmt:setLocale><fmt:setBundle>的工作。

request.setAttribute("bundleName", yourCustomResourceBundle); 

参见internationalization in JSF with ResourceBundle entries which are loaded from database(虽然JSF的目标,这个想法是简单的JSP相同;如说,你只需要一个Filter,而不是将其设置)。

+0

谢谢你的完整答案。我的“如何国际化java web应用程序”中的示例出现错误,正好在选项标记中:在此行找到多个注释: - 标记(