sturts2的国际化支持详解编程语言
编程语言 详解 支持 国际化
2023-06-13 09:20:31 时间
以前一直看见 i18N ,现在才知道原来 i18N 就是 Internationalization,因为以 i 开头,以 N 结尾,共18个字母,也就是国际化的意思。那么怎样通过struts2实现国际化支持呢?
第一步:在src目录下添加两个资源文件,命名方式很重要的。
格式:baseName_language_country.properties。还有两种命名方式,都可以的,这个不用过多研究。比如,实现中英文切换我们要添加 globalMessages_zh_CN.properties 和globalMessages_en_US.properties。然后将各个key-value对添加到这两个文件中,key字段一定要统一。如:
其中,value值可以使用占位符,比如:你好{0},至于怎么传参数,稍后再解释。
第二步:在struts.xml文件的struts标签里加入如下代码:
constant name="struts.custom.i18n.resources" value="globalMessages"/ constant name="struts.i18n.encoding" value="UTF-8" /
在jsp中使用
%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"% !-- 加载struts2标签库 -- %@ taglib uri="/struts-tags" prefix="s"% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; !DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd" html head base href=" %=basePath% " s:head/ meta http-equiv="Content-Type" content="text/html; charset=UTF-8" title s:text name="loginPage"/ /title /head body a href="register?request_locale=zh_CN" 中文 /a a href="register?request_locale=en_US" English /a s:form action="register" method="post" %-- s:i18n 标签是用来从声明的资源包获得消息, 不只是使用当前操作相关联的资源包。properties文件的名称可以是任意的 name属性指定properties文件的名称 --% s:i18n标签取出国际化内容: s:i18n name="globalMessages" s:text name="loginPage"/ /s:i18n br/ s:test标签取出国际化内容: s:text name="loginPage"/ s:textfield key="email" name="email" /s:textfield s:textfield key="password" name="password" /s:textfield s:textfield key="repassword" name="repassword" /s:textfield s:textfield key="phone" name="phone" /s:textfield s:submit key="submit" /s:submit /s:form /body /html
效果展示:
输出带占位符的信息。如,有一个 HelloWorld=Hello World{0},那么可以用下面这种方式来显示:
success.jsp
%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"% %@ taglib uri="/struts-tags" prefix="s"% !DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd" html head meta http-equiv="Content-Type" content="text/html; charset=UTF-8" title 注册成功 /title /head body s:text name="HelloWorld" s:param s:property value="email"/ /s:param /s:text /body /html
效果展示:
参考资料:
Struts2 的国际化实现
11185.html
cjavaxml相关文章
- Python创建Windows 服务详解编程语言
- JavaScript 限制文本框输入长度(支持字符限制)详解编程语言
- js日期时间格式化函数 支持季度 24/12小时制 周 毫秒(Date扩展)详解编程语言
- Spring配置文件的加载工具类详解编程语言
- java 实现快速排序详解编程语言
- Java 下载支持断点续传服务端详解编程语言
- Java分页实现代码详解编程语言
- 在指定的范围内,生成不重复的随机数序列(排除法,筛选法)详解编程语言
- 使用 NIO 实现的一个超级快的 FileServlet详解编程语言
- MyBatis学习总结(五)——实现关联表查询详解编程语言
- Ember.Js v2.14.0-beta.1 发布,一个JavaScript框架详解编程语言
- Akka(32): Http:High-Level-Api,Route exception handling详解编程语言
- jquery监听input值改变事件详解编程语言
- java排列组合算法详解编程语言
- Java并发编程之读写锁详解编程语言
- Junit单元测试不支持多线程的问题详解编程语言
- SpringMVC配置详解编程语言
- Java经典实例:进阶版堆栈实现,支持任何对象类型详解编程语言
- html不同文档类型支持的元素标签详解编程语言
- JVM 类加载机制详解编程语言
- 航班预订统计算法详解编程语言
- Django Cookie和Session详解编程语言
- 将任意自然数分解为质数的乘积(Java实现)详解编程语言