Struts2的国际化 全局的国际化:(JSP,Action,配置文件)Action范围的国际化:包范围的国际化:临时的国际化
发布日期:2021-06-29 15:02:04
浏览次数:2
分类:技术文章
本文共 2007 字,大约阅读时间需要 6 分钟。
Java当中 的国际化:
概念:软件的国际化:软件可以根据来访者不同去自动切换语言进行显示。提供一组资源包:
资源包需要有相同的基本名称。
命名规则:基本的名称_语言_国家.properties 通过ResourceBundle读取资源包。Struts2中的国际化
一、全局的国际化:
A、提供一组资源包,在项目的任意位置(因为是全局的国际化所以任意位置都可以)
在src下创建两个文件
这里创建文件以后可能会碰到输入中文乱码的问题,请参考以下解决办法 创建这两个文件message_en_US.properties
name=mary
message_zh_CN.properties
name=玛丽
B、需要在struts.xml当中开启常量:
1、在JSP当中
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><%@ taglib uri="/struts-tags" prefix="s"%>Insert title here 国际化
测试
2、在Action类当中
创建I18NAction
package com.itzheng.web.action.demo7;import com.opensymphony.xwork2.ActionSupport;public class I18NAction extends ActionSupport { @Override public String execute() throws Exception { // TODO Auto-generated method stub String name = getText("name"); System.out.println(name); return NONE; }}
配置好访问路径
测试: 根据系统的设置的语言输出对应不同语言的信息3、在配置文件当中
(1)更改资源包
message_en_US.properties
name=marylogin.username=Username not null!login.password=Password not null!
message_zh_CN.properties
name=玛丽login.username=用户名不能为空!(国际化文件)login.password=密码不能为空!(国际化文件)
(2)创建登录jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><%@ taglib uri="/struts-tags" prefix="s" %>Insert title here 登录页面
(3)创建RegistAction
(4)LoginAction2-validation.xml
(5)配置访问
(6)测试
定义好全局的国际化,在任何地方都可以使用二、Action范围的国际化:
在Action类使用:在Action所在的包下去创建一个属性文件。(名字要与Action的类名一致)
属性文件格式:类名_语言_国家.properties 只能在I18NAction当中使用package com.itzheng.web.action.demo7;import com.opensymphony.xwork2.ActionSupport;public class I18NAction extends ActionSupport { @Override public String execute() throws Exception { // TODO Auto-generated method stub String key = getText("key"); System.out.println(key); return NONE; }}测试
三、包范围的国际化
在当前包以及当前包的子包下使用。
1、在当前包内创建属性文件:package_zh_CN.properties文件(在该包下所有的Action都可以使用)
属性文件格式:package_语言_国家.properties
测试四、临时的国际化
在页面的JSP当中使用
读取包下的国际化文件五、拓展:占位符
通过占位符替换值
1、JSP页面上使用
2、在Action当中使用
测试 结果转载地址:https://code100.blog.csdn.net/article/details/107042951 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2024年04月25日 12时29分03秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
1元钱的超低成本单芯片USB单片机方案
2019-04-29
单片机/树莓派扩展双串口(TTL和RS485)
2019-04-29
JAVA(android)提取WIFI客流探针MAC地址源码
2019-04-29
基于CH568芯片的SATA电子盘方案
2019-04-29
linux下C语言判断网络是否连接
2019-04-29
STM32Cube_FW_F4_V1.17 F4固件包百度网盘下载
2019-04-29
猿来绘Java-35-线程的同步(生产者和消费者问题)
2019-04-29
猿来绘Java-36-解决线程安全问题
2019-04-29
猿来绘Java-37-ReentrantLock解决线程安全问题
2019-04-29
猿来绘Java-38-生产者消费者模型
2019-04-29
猿来绘Java-39-JDK8的新日期时间类
2019-04-29
猿来绘Java-40-比较器(Comparable 接口与 CompareTo方法)
2019-04-29
猿来绘Java-41-源码分析String对象的数组的排序(JDK1.8)
2019-04-29
猿来绘Java-42-枚举类的使用
2019-04-29
猿来绘Java-43-初步认识注解
2019-04-29
猿来绘Java-44-自定义注解和元注解
2019-04-29
猿来绘Java-45-JDK8新特性可重复注解和类型注解
2019-04-29
猿来绘Java-46-Collection接口及其方法
2019-04-29
猿来绘Java-47- foreatch 增强for循环
2019-04-29
2021/4/27课堂总结和作业
2019-04-29