【Struts】国际化
2017-10-11 21:36
239 查看
什么是本地化和国际化
软件的本地化:一个软件在某个国家或地区使用时,采用该国家或地区的语
言,数字,货币,日期等习惯。
软件的国际化:软件开发时,让它能支持多个国家和地区的本地化应用。使
得应用软件能够适应多个地区的语言和文化风俗习惯。
国际化原理
本地化信息
资源文件 基本名_语言名_国家码.properties 基本名.properties(默认)
加载资源文件
显示资源文件信息
资源文件
中文:resource_zh_CN.properties
英文:resource_en_US.properties
默认:resource.properties
存储在同Action所在的包下。
加载资源文件(常量的方法) struts.xml
<!--
cn.qblank.config.resource加载resource.properties系列文件
-->
下面我们就来对index.jsp实现简单的国际化
首先在cn.qblank.config包下配置资源文件:
基础名(msg).properties 【默认的语言环境配置】
基础名_语言简称_国家简称(msg_en_US.properties).properties
然后再struts的常量配置中配置国际化
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<!-- 总配置文件 负责引入各个子配置文件 -->
<!-- name可以直接到default.properties的文件中找到 -->
<constant name="struts.custom.i18n.resources" value="cn.qblank.i18.msg"></constant>
</struts>
然后我们就开始写index.jsp页面
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!-- 导入struts标签 -->
<%@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">
<html>
<head>
<base href="<%=basePath%>">
<!-- 进行国际化处理 -->
<title><s:text name="title"></s:text></title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
</head>
<body>
<!-- 进行国际化处理第一种方式 -->
<h3>第一种国际化方式</h3>
<h3><s:text name="login success"></s:text></h3>
<!-- 国际化处理第二种方式 -->
<h3>第二种国际化方式</h3>
<s:i18n name="cn.qblank.config.msg">
<s:text name="login success"></s:text>
</s:i18n>
</body>
</html>
上面有两种国际化方式,不过推荐使用第一种,因为便于seo优化
运行结果如下:
首先我们切换中文为首选项
然后切换英文为首选项
这样我们就用struts完成了国际化
软件的本地化:一个软件在某个国家或地区使用时,采用该国家或地区的语
言,数字,货币,日期等习惯。
软件的国际化:软件开发时,让它能支持多个国家和地区的本地化应用。使
得应用软件能够适应多个地区的语言和文化风俗习惯。
国际化原理
本地化信息
资源文件 基本名_语言名_国家码.properties 基本名.properties(默认)
加载资源文件
显示资源文件信息
资源文件
中文:resource_zh_CN.properties
英文:resource_en_US.properties
默认:resource.properties
存储在同Action所在的包下。
加载资源文件(常量的方法) struts.xml
<!--
cn.qblank.config.resource加载resource.properties系列文件
-->
下面我们就来对index.jsp实现简单的国际化
首先在cn.qblank.config包下配置资源文件:
基础名(msg).properties 【默认的语言环境配置】
基础名_语言简称_国家简称(msg_en_US.properties).properties
然后再struts的常量配置中配置国际化
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<!-- 总配置文件 负责引入各个子配置文件 -->
<!-- name可以直接到default.properties的文件中找到 -->
<constant name="struts.custom.i18n.resources" value="cn.qblank.i18.msg"></constant>
</struts>
然后我们就开始写index.jsp页面
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!-- 导入struts标签 -->
<%@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">
<html>
<head>
<base href="<%=basePath%>">
<!-- 进行国际化处理 -->
<title><s:text name="title"></s:text></title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
</head>
<body>
<!-- 进行国际化处理第一种方式 -->
<h3>第一种国际化方式</h3>
<h3><s:text name="login success"></s:text></h3>
<!-- 国际化处理第二种方式 -->
<h3>第二种国际化方式</h3>
<s:i18n name="cn.qblank.config.msg">
<s:text name="login success"></s:text>
</s:i18n>
</body>
</html>
上面有两种国际化方式,不过推荐使用第一种,因为便于seo优化
运行结果如下:
首先我们切换中文为首选项
然后切换英文为首选项
这样我们就用struts完成了国际化
相关文章推荐
- struts.custom.i18n.resources——struts国际化
- Struts国际化学习笔记
- 在Struts 2.0中国际化(i18n)您的应用程序
- 18、struts硬编码国际化
- 关于struts2+displaytag的国际化处理
- 程序动态调用struts国际化资源包键值的方法
- struts中文问题","struts国际化问题"的终极解决方案
- struts应用的国际化
- 在Struts 2.0中国际化(i18n)您的应用程序(Struts 2.0系列之四)
- Struts应用的国际化
- Struts的框架的国际化
- Struts 2中的国际化
- 第四讲 struts中的国际化与文件上传下载
- 在Struts 2.0中国际化(i18n)您的应用程序(1)
- java语言国际化--ResouceBundle、struts
- struts国际化问题,利用Eclipse插件编辑中文资源文件
- 19、struts国际化的切换
- 在Struts 2.0中国际化(i18n)您的应用程序
- Struts国际化处理
- 在Struts 2中国际化(i18n)您的应用程序