使用JSTL标签做页面资源国际化

JSTL 标签支持国际化的标签为
   <fmt:bundle> <fmt:message> <fmt:setBundle><fmt:param>
   <fmt:bundle> 功能:指定消息资源使用的文件
   <fmt:message>功能:显示消息资源文件中指定key的消息,支持带参数消息
   <fmt:param> 功能:给带参数的消息置参数值
   <fmt:setBundle> 功能:设置消息资源文件
  
   一个支持按模块的多资源文件的国际化例子
  
   步骤1 :定义两个资源文件,分别为
   resources/IAMResources_zh_CN.properties, 内容为
   # 测试使用
   test.common.message = test.common.message1 {0}
  
   resources/UserSynResources_zh_CN.properties 内容为
   # 测试使用
   test.usersyn.message = test.usersyn.message1 {0}
  
   步骤2:定义一个公用的JSP文件 includeTld.jsp,其内容为
   <%-- struts taglib --%>
   <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
   <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
   <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
   <%@ taglib uri="/WEB-INF/struts-nested.tld" prefix="nested" %>
   <%@ taglib uri="/WEB-INF/struts-template.tld" prefix="template" %>
   <%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles" %>
   <%-- jstl taglib --%>
   <%@ taglib prefix="c" uri="/WEB-INF/c.tld" %>
   <%@ taglib prefix="fmt" uri="/WEB-INF/fmt.tld" %>
   <%@ taglib prefix="x" uri="/WEB-INF/x.tld" %>
   <%@ taglib prefix="sql" uri="/WEB-INF/sql.tld" %>
  
   <%-- set Common MessageResource --%>
   <fmt:setBundle basename="resources.IAMResources" var="commonBundle"/>
   <%-- set UserSyn MessageResource --%>
   <fmt:setBundle basename="resources.UserSynResources" var="userSynBundle"/>
  
   步骤3 : 在需要国际化的JSP页面使用按如下编写
   <%@page contentType="text/html; charset=utf-8"%>
   <%@include file="/includeTld.jsp"%>
  
   <fmt:message key="test.common.message" bundle="${commonBundle}">
   <fmt:param value="liaowufeng"/>
   </fmt:message>
  
   <fmt:message key="test.usersyn.message" bundle="${userSynBundle}">
   <fmt:param value="liaowufeng"/>
   </fmt:message>  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,我知道您的问题了。在JSP页面中,可以通过使用JSTL国际化标签实现简单登录界面的中英文切换。具体实现步骤如下: 1. 在JSP页面中导入JSTL国际化标签库: ```jsp <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> ``` 2. 在项目的资源文件中,创建两个文件:messages.properties和messages_en.properties,分别存放中文和英文的登录页面文本信息。例如: messages.properties: ```properties login.username=用户名: login.password=密码: login.submit=登录 ``` messages_en.properties: ```properties login.username=Username: login.password=Password: login.submit=Login ``` 3. 在JSP页面使用fmt:setLocale标签设置当前语言环境: ```jsp <fmt:setLocale value="zh_CN" scope="session"/> ``` 4. 在JSP页面使用fmt:message标签来获取对应语言环境下的文本信息,并渲染到页面上。例如: ```jsp <form action="login.do" method="post"> <label for="username"><fmt:message key="login.username"/></label> <input type="text" name="username" id="username"/><br/> <label for="password"><fmt:message key="login.password"/></label> <input type="password" name="password" id="password"/><br/> <input type="submit" value="<fmt:message key='login.submit'/>"/> </form> ``` 5. 在JSP页面使用超链接或按钮等控件来切换语言环境。例如: ```jsp <a href="?locale=zh_CN">中文</a> <a href="?locale=en_US">English</a> ``` 6. 在后台代码中,可以通过获取请求参数locale的值,来设置当前的语言环境。例如: ```java String locale = request.getParameter("locale"); if (locale != null && !locale.isEmpty()) { LocaleResolver localeResolver = RequestContextUtils.getLocaleResolver(request); localeResolver.setLocale(request, response, Locale.forLanguageTag(locale)); } ``` 这样就可以实现简单登录界面的中英文切换了。希望能够帮到您。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值