Struts2国际化-getText()方法
转自https://blog.csdn.net/qq_43560838/article/details/83747604
一:简单理解
国际化简称i18n,其来源是英文单词 internationalization的首末字符i 和n。18为中间的字符数。
随着全球经济的一体化,软件开发者应该开发出支持多国语言、国际化的Web应用。对于Web应用来说,同样的页面在不同的语言环境下需要显示不同的效果。
国际化文件的命名规则:
1、基本名.properties 如:message.properties
2、基本名_语言编码_国家编码.properties 如:message_zh_CN.properties, message_en_US.properties 其中语言编码和国家编码是固定的,可以在JDK中Locale类的常量中找到。
Java中已经实现了国际化功能,struts2中只是对该功能进行了整合,以方便我们的使用。
Struts2中使用到国际化的地方有: 1、jsp页面的国际化; 2、Action信息国际化; 3、转换错误信息的国际化; 4、校验错误信息的国际化;
Struts2国际化文件分类: 1、全局范围国际化文件 2、包范围国际化文件 3、Action类范围国际化文件。
全局范围国际化文件:
编写一个messages_zh_CN.properties和messages_en_US.properties放在src下。
我在这里配置了两个属性:
messages_en_US:
login.username=username
login.password=password
messages_zh_CN:
login.username=\u767B\u5F55\u7528\u6237\u540D
login.password=\u767B\u5F55\u5BC6\u7801
在struts.xml中通过struts.custom.i18n.resources常量把资源文件定义为全局资源文件:
eg:
<!-- 配置struts2国际化 value是国际化资源基本名message-->
<constant name="struts.custom.i18n.resources" value="messages_en_US"/>
或者
<constant name="struts.custom.i18n.resources" value="messages_zh_CN"/>
(java代码中)国际化获取配置文件值使用:getText("键")
eg:getText("login.username") ---------》username。
或者
getText("login.username") ------------>登录用户名。
在jsp页面中使用国际化。这里需要使用标签:<s:i18n>标签
eg:
1 <!-- 局部定义使用哪一种国际化语音 -->
2 <s:i18n name="messages_zh_CN">
3 <form action="<%=basePath%>login.action" method="post">
4 <table>
5 <tr>
6 <td><s:text name="login.username"/></td>
7 <td><input type="text" name="user.userName"/></td>
8 </tr>
9 <tr>
10 <td><s:text name="login.password"/></td>
11 <td><input type="text" name="user.password"/></td>
12 </tr>
13 <tr>
14 <td colspan="2"><input type="submit" value="<s:text name="login"/>"/></td>
15 </tr>
16 </table>
17 </form>
18 </s:i18n>
浏览器显示为:
1 <!-- 局部定义使用哪一种国际化语音 -->
2 <s:i18n name="messages_en_US">
3 <form action="<%=basePath%>login.action" method="post">
4 <table>
5 <tr>
6 <td><s:text name="login.username"/></td>
7 <td><input type="text" name="user.userName"/></td>
8 </tr>
9 <tr>
10 <td><s:text name="login.password"/></td>
11 <td><input type="text" name="user.password"/></td>
12 </tr>
13 <tr>
14 <td colspan="2"><input type="submit" value="<s:text name="login"/>"/></td>
15 </tr>
16 </table>
17 </form>
18 </s:i18n>
浏览器显示为
Struts2国际化-getText()方法的更多相关文章
- struts2国际化
struts2国际化 1:什么是国际化? 国际化(internationalization)是设计和制造容易适应不同区域要求的产品的一种方式.它要求从产品中抽离所有的与语言,国家/地区和文化相关的元素 ...
- ActionSupport.getText()方法 以及 js中:<s:text name="" />
下面略述com.opensymphony.xwork2.ActionSupport.getText()方法 public String getText(String aTextName) 说明:Get ...
- struts2国际化全例 错误解决
在struts2中需要做国际化的有: jsp页面的国际化,action错误信息的国际化,转换错误信息的国际化,校验错误信息的国际化 在之前的例子中已经做过和国际化相关的例子了,在struts.xml中 ...
- 菜鸟学SSH(三)——Struts2国际化自动检测浏览器语言版
前几天发了一篇Struts国际化的博客——<菜鸟学习SSH(二)——Struts2国际化手动切换版>,有网友提了一个意见,见下图: 于是就有了下面修改的版本: web.xml <?x ...
- 【Struts2学习笔记(12)】Struts2国际化
(1)准备资源文件,资源文件的命名格式例如以下: baseName_language_country.properties baseName_language.properties baseName. ...
- 06章 Struts2国际化
1:什么是国际化? 国际化(internationalization)是设计和制造容易适应不同区域要求的产品的一种方式.它要求从产品中抽离所有的与语言,国家/地区和文化相关的元素.换言之,应用程序的功 ...
- 【转】Struts2国际化
原文章:http://www.cnblogs.com/hellokitty1/p/5083663.html 简单理解 国际化简称i18n,其来源是英文单词 internationalizati ...
- struts2国际化相关问题
国际化资源文件的方式: Action范围的 包范围的 临时的 全局的(推荐) 一.配置全局的国际化资源文件 1.在类路径下,创建国际化资源文件 baseName.properties baseName ...
- 笔记:Struts2 国际化
视图页面的国际化 在JSP页面中指定国际化资源需要借助<s:i18n-/>标签,如果把<s:i18n-/>标签作为<s:test-/>标签的父标签,则会直接加载父标 ...
随机推荐
- 换今日特价图片---轻开电子商务系统(企业入门级B2C站点)
跟换主页轮播图片一样,一共4个文件: 列表显示文件:site/links/img2.html 加入图片文件:site/links/img2_add.html 加入保存图片文件:site/links/i ...
- cocos2d-x 2.2.2 在lua中更换CCSprite的图片
废话不多说,直接上代码 --lua --获取场景 local scene= CCDirector:sharedDirector():getRunningScene() --创建精灵 local tes ...
- bzoj2229: [Zjoi2011]最小割(分治最小割+最小割树思想)
2229: [Zjoi2011]最小割 题目:传送门 题解: 一道非常好的题目啊!!! 蒟蒻的想法:暴力枚举点对跑最小割记录...绝对爆炸啊.... 开始怀疑是不是题目骗人...难道根本不用网络流?? ...
- 91.Bower : ENOGIT git is not installed or not in the PATH 解决方法
转自:https://www.haorooms.com/post/bower_error 今天在用bower安装依赖的时候,出现了Bower : ENOGIT git is not installed ...
- JAR包放在WEB-INF/lib子目录报ClassNotFoundException解决方案
对于Java Web应用依赖的jar包,我们通常会放到WEB-INF/lib目录下,但是笔者喜欢把不同框架的jar包放在不同的子目录下,例如新建一个struts目录存放struts框架的jar包等. ...
- QT笔记 -- (6) opengl
参考 http://blog.csdn.net/myths_0/article/details/24431597 用glut绘制一个茶壶 一句话,继承QGLWidget,实现下面三个函数,用子类定义窗 ...
- shell-4.bash的变量:用户自定义变量
目录 内容
- img图片在ie上有有空隙
图片在ie下会有空隙 首先在全局样式中设置img标签的边距为0 img { border:0;} 一般有两个方法1,img{float:left}2,img{display:block}
- ActiveMQ学习笔记(7)----ActiveMQ支持的传输协议
1. 连接到ActiveMQ Connector: Active提供的,用来实现连接通讯的功能,包括:client-to-broker,broker-to-broker.ActiveMQ允许客户端使用 ...
- 3ds Max制作客厅场景实例教程
附件系列 (图01) 让我们回顾一下场景:一个房间包括下列一件件家具, 在中间的一张小桌子,在房间的角落的一个小桌子,有一个垃圾桶和一个带镜子的边桌,有一个烛台.还有一个挂钟,窗帘,沙发和带手臂的椅子 ...