【发布时间】:2012-09-11 17:11:08
【问题描述】:
我正在使用 JSP 和 Java Servlet 构建一个 Web 应用程序。目前我正在使用 JSTL fmt 使用属性文件(messages.properties)进行国际化。但是我的客户希望能够实时更新文本,所以我需要将键/值从属性文件移动到数据库。问题是我不知道如何将数据库中的文本读入例如
JSP 文件中的<fmt:message> 标记。
非常欢迎任何帮助,谢谢
//陌陌
【问题讨论】:
-
数据库查询是重量级的;如果您必须对网页中的每个标题进行查询,那将非常慢。我建议在需要时重新加载国际化包的机制。
-
您是否已经设置了数据库访问权限?您可以在数据库中使用区域设置或语言键存储对象的名称和描述,并让您的 servlet 确定当前区域设置。
-
感谢您的回答。 @SJuan76 确实,使用此解决方案应用程序会非常慢。您对如何在需要时重新加载国际化包有什么建议吗?
-
@Paujo 是的,我已经设置了数据库访问权限,并且可以检索键/值对。问题是将它们传递给 JSP 文件。
-
无论是从文件还是从数据库中读取,都必须将其缓存在 mpa 中(我没有使用过
fmt,我通常使用ResourceBundle,它已经做到了)。提供重新从源重新加载该地图的方法。