spring mvc使用sessionlocaleresolver实现用户自定义切换语言实例-亚博电竞手机版

在许多成熟的商业软件系统中可以让用户自由切换语言,而不是修改浏览器的语言设置。一旦用户选择了自己需要使用的语言环境,整个系统的语言环境将一直是这种语言环境。 spring mvc 也可以允许用户自行选择程序语言。本章通过 web 应用 springmvcdemo09 演示用户自定义切换语言,在该应用中使用 sessionlocaleresolver 实现国际化,具体步骤如下:

1)创建应用

创建应用 springmvcdemo09,并导入 spring mvc 相关的 jar 包。

2)创建国际化资源文件

在 web-inf/resource 目录下创建中英文资源文件 messages_en_us.properties 和 messages_zh_cn.properties。 messages_en_us.properties 的内容如下:

first=first second=second third={0} third{1} language.en=english language.cn=chinese

messages_zh_cn.properties 的内容如下:

first=\u7b2c\u4e00\u9875 second=\u7b2c\u4e8c\u9875 third={0} \u7b2c\u4e09\u9875 {1} language.cn=\u4e2d\u6587 language.en=\u82f1\u6587

3)创建视图 jsp 文件

在 web-inf/jsp 目录下创建 3 个 jsp 文件,即 first.jsp、second.jsp 和 third.jsp。 first.jsp 的代码如下:
 <%@ page language="java" contenttype="text/html; charset=utf-8"  pageencoding="utf-8"%> <%@taglib prefix="spring" uri="http://www.springframework.org/tags"%>     insert title here        --          



second.jsp 的代码如下:
 <%@ page language="java" contenttype="text/html; charset=utf-8"     pageencoding="utf-8"%> <%@taglib prefix="spring" uri="http://www.springframework.org/tags"%>     insert title here       

third.jsp 的代码如下:
 <%@ page language="java" contenttype="text/html; charset=utf-8"     pageencoding="utf-8"%> <%@taglib prefix="spring" uri="http://www.springframework.org/tags"%>     insert title here            

4)创建控制器类

该应用有两个控制器类,一个是 i18ntestcontroller 处理语言种类选择请求,一个是 mycontroller 进行页面导航。在 src 目录中创建一个名为 controller 的包,并在该包中创建这两个控制器类。 i18ntestcontroller.java 的代码如下:
 package controller; import java.util.locale; import org.springframework.web.bind.annotation.requestmapping; @controller public class i18ntestcontroller {     @requestmapping("/i18ntest")     /**      * locale接收请求参数locale值,并存储到session中      */     public string first(locale locale) {         return "first";     } }
mycontroller 的代码如下:
 package controller;  import org.springframework.stereotype.controller; import org.springframework.web.bind.annotation.requestmapping;  @controller @requestmapping("/my") public class mycontroller {     @requestmapping("/first")     public string first() {         return "first";     }      @requestmapping("/second")     public string second() {         return "second";     }      @requestmapping("/third")     public string third() {         return "third";     } }

5)创建配置文件

在 web-inf 目录下创建配置文件 springmvc-servlet.xml 和 web.xml。web.xml 的代码与 spring mvc 简单应用的相同,这里不再赘述。springmvc-servlet.xml 的代码如下:
                                                                                                                               

6)发布应用并测试

首先将 springmvcdemo09 应用发布到 tomcat 服务器并启动 tomcat 服务器,然后通过地址“http://localhost:8080/springmvcdemo08/my/first”测试第一个页面,运行结果如图 1 所示。 图 1中文环境下 first.jsp 的运行结果 单击图 1 中的“第二页”超链接,打开 second.jsp 页面,运行结果如图 2 所示。 图 2中文环境下second.jsp的运行结果 单击图 2 中的“第三页”超链接,打开 third.jsp 页面,运行结果如图 3 所示。 图 3中文环境下third.jsp的运行结果 单击图 1 中的“英文”超链接,打开英文环境下的 first.jsp 页面,运行结果如图 4 所示。 图 4英文环境下 first.jsp 的运行结果 单击图 4 中的 second 超链接,打开英文环境下的 second.jsp 页面,运行结果如图 5 所示。 图 5英文环境下 second.jsp 的运行结果 单击图 5 中的 third 超链接,打开英文环境下的 third.jsp 页面,运行结果如图 6 所示。 图 6英文环境下 third.jsp 的运行结果
展开全文
内容来源于互联网和用户投稿,文章中一旦含有亚博电竞手机版的联系方式务必识别真假,本站仅做信息展示不承担任何相关责任,如有侵权或涉及法律问题请联系亚博电竞手机版删除

最新文章

网站地图