终于实现想要的国际化要求了

来源:互联网 发布:马代满月岛 知乎 编辑:程序博客网 时间:2024/04/30 08:13

今天经过摸索,终于实现了额外的国际化要求了:即点击不同的国旗(其实只是文字链接也可以)切换不同界面的语言。

哎,有时候只是很心烦给老师看,一方面要老师意见,另一方面他也许心血来潮说要实现个什么东西~这不,这个国际化就是他一句话的结果,害的我研究了至少有3天啊,可我的核心内容还没有进入呢,汗啊~

 

简略说下实现过程吧。

 

就像之前我提到的学习了JSTL的4个基本库的知识,其实要国际化只会涉及到两个库:core 和 fmt,利用JAVA的绑定资源的功能来实现。

 

在自己的WEB应用中JSTL.JAR和STANDARD.JAR是一定要有的,否则读不了这两个库的内容,将其放在WEB-INFO 里的lib文件夹下就可以了。

 

再就是JSP文件的编写。

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>

得加在JSP页的开头

 

这段就是实现 点击英国国旗,实现界面显示英文的功能。

<c:url value="链接的JSP网页" var="取得变量名">

   <c:param name="参数名" value="参数值"(因为我有不同的语言,所以由这个参数)/>

</c:url>

再下来就是要绑定资源了

这个basename取得名字将会在资源文件中用到,我用的是language

然后就是从资源文件读取信息,传递到页面上进行显示。

 

这句就是从资源文件中读取 key值为username的值,根据不同的语言,自动读取。

 

对了最后别忘了写</fmt:bundle>

 

现在就到最关键的生成资源文件的部分了,我是用JDK自带的native2ascii.exe进行转换的,因为有资料说JAVA的资源绑定机制只接受用ASCII编码的属性文件。

我是将写的文件写在写字板上用命令行进行转化的。转换过程可以参见这个网页

生出的文件记得要放在 WEB-INFO的classes文件夹下。然后重启TOMCAT,就可以看到我们要的效果啦~

 

之后又看到这个网页也有关于多语言JSP实现的介绍

 

原创粉丝点击