Spring MVC完成指南(三)国际化的支持

     继上一篇完成hibernate的集成后,接下来就是国际化的支持,查阅spring的文章以后,准备了一下 look,要让spring支持中文就需要用native2ascii做中文的转义。

     转义方法如下:

     native2ascii -encoding gb2312  messages_zh.txt > messages_zh.properties

 

英文的就不需要转义了。

 

然后有改变的代码我会帖出来。


这个项目图样

Spring MVC完成指南(三)国际化的支持_第1张图片

将所有的国际化的东东全放在Src的根目录下。


messages_en.properties

main.title=Hello World! title=SpringMVC username=username password=password password2=password2 submit=submit welcome=welcome loginSuccess=loginSuccess usernameerror=usernameerror passworderror=passworderror doublepassword=doublepassworderror

 

messages_zh.properties

title=SpringMVC/u5B9E/u4F8B username=/u8F93/u5165/u7528/u6237/u540D/: password=/u8F93/u5165/u5BC6/u7801/: password2=/u786E/u8BA4/u5BC6/u7801/: submit=/u63D0/u4EA4 welcome=/u6B22/u8FCE loginSuccess=/u6CE8/u518C/u6210/u529F usernameerror=/u7528/u6237/u540D/u4E0D/u6B63/u786E passworderror=/u5BC6/u7801/u4E0D/u6B63/u786E doublepassword=2/u6B21/u5BC6/u7801/u4E0D/u4E00/u81F4

这个是转义后的东东。

 

转义前的

messages_zh.txt

title=SpringMVC实例 username=输入用户名: password=输入密码: password2=确认密码: submit=提交 welcome=欢迎 loginSuccess=注册成功 usernameerror=用户名不正确 passworderror=密码不正确 doublepassword=2次密码不一致

 

zh.bat

native2ascii -encoding gb2312 messages_zh.txt > messages_zh.properties


国际化需要的文件都已经准备完成,剩下来就是添加显示标签和加载了。

 

我将加载的信息放错了文件了,放到了dispatcherServlet.xml......

当我调用spring的显示标签的时候,直接报错.... ...under code............ 一堆错误信息。

 

我查阅相关资料后,发现在初始化的时候dispatcherServlet.xml 只会在servlet做出响应,这个时候加载信息应该加入到ApplicationContext.xml

 

加载信息如下:

org.hibernate.dialect.MySQLDialect update cn.Person PROPAGATION_REQUIRED PROPAGATION_REQUIRED PROPAGATION_REQUIRED PROPAGATION_REQUIRED PROPAGATION_REQUIRED PROPAGATION_REQUIRED,readOnly PROPAGATION_REQUIRED,readOnly PROPAGATION_REQUIRED true *Dao transactionInterceptor

 

然后,index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <%@ taglib prefix="spring" uri="WEB-INF/spring.tld"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <spring:message code="title"/>

">

 

接着就是test.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <%@ taglib prefix="spring" uri="/WEB-INF/spring.tld"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <spring:message code="title"/> ${user.name}

 

以上完成后,就可以正常的调用spring国际化的东东了。

呵呵,需要注意的是 jsp中都包含了<%@ taglib prefix="spring" uri="/WEB-INF/spring.tld"%>  这个标签。

路径可以进行统一,不过也没啥必要。

 

如果有什么问题欢迎和我探讨。

 

接着还有其他功能的整合........未完待续............   ^_^

你可能感兴趣的:(Java)