首页 > 其他 > 详细

struts2视频学习笔记 24-27(国际化)

时间:2015-10-27 14:49:19      阅读:211      评论:0      收藏:0      [点我收藏+]

技术分享 课时24

  • 配置国际化全局资源文件、输出国际化信息

1.准备资源文件,添加到src目录下,资源文件的命名格式如下:
baseName_language_country.properties
baseName_language.properties
baseName.properties
其中baseName是资源文件的基本名,我们可以自定义,但language和country必须是java支持的语言和国家。如:
中国大陆: test_zh_CN.properties

内容:welcome=欢迎测试

welcome=\u6B22\u8FCE\u6D4B\u8BD5

对于中文的属性文件,我们编写好后,应该使用jdk提供的native2ascii命令把文件转换为unicode编码的文件(eclipse自动转换)。命令的使用方式如下:
native2ascii  源文件.properties  目标文件.properties


美国: test_en_US.properties

内容:welcome=welcome to test

2.

<constant name="struts.custom.i18n.resources" value="test"/>

 

3.在JSP页面中访问国际化信息

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s" %> <!-- struts2标签 -->
<!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="welcome"></s:text>
</body>

 

在action中访问国际化信息

package tutorial;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

public class Person extends ActionSupport{


    @Override
    public String execute() throws Exception {
        ActionContext.getContext().put("message", getText("welcome"));
        return "message";
    }


}

 

在表单标签中,通过key属性指定资源文件中的key,如:
<s:textfield name="realname" key="welcome"/>

技术分享   技术分享
技术分享 课时25

  • 输出带有占位符的国际化信息

资源文件中的内容如下:

welcome={0},欢迎测试{1}

welcome={0},welcome to test{1}

 

在jsp页面中输出带占位符的国际化信息

<s:text name="welcome">
    <s:param>zzy</s:param>
    <s:param>study</s:param>
</s:text> 

 

在Action类中获取带占位符的国际化信息,可以使用getText(String key, String[] args)或getText(String aTextName, List args)方法。

public String execute() throws Exception {
        ActionContext.getContext().put("message", this.getText("welcome",new String[]{"zzy","study"}));
        return "message";
    }

技术分享   技术分享
技术分享 课时26

  • 配置包范围国际化资源文件

     在java的包下放置package_language_country.properties资源文件,package为固定写法,处于该包及子包下的action都可以访问该资源。当查找指定key的消息时,系统会先从package资源文件查找,当找不到对应的key时,才会从常量struts.custom.i18n.resources指定的资源文件(全局范围资源文件)中寻找。

技术分享   技术分享
技术分享 课时27

  • 配置Action范围国际化资源文件

struts2视频学习笔记 24-27(国际化)

原文:http://www.cnblogs.com/zziy/p/4913855.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!