Struts2之国际化

准备好资源文件

对于中文的属性文件,我们编写好后,应该使用jdk提供的native2ascii命令把文件转换为unicode编码的文件。

命令的使用方式如下:native2ascii 源文件.properties 目标文件.properties当准备好资源文件后,,我们可以在struts.xml中通过struts.custom.i18n.resources常量把资源文件定义为全局资源文件,如下:<constant name="struts.custom.i18n.resources" value="csdn"/>后面我们可以在页面或在action中访问国际化信息:在jsp页面中使用<s:text name=""/>标签输入国际化信息:<s:text name="user"/>,name为资源文件中的key在action类中,可以继承ActionSupport,使用getText()方法得到国际化信息,该方法的第一个参数用于指定资源文件中的key在表单标签中,通过key属性指定资源文件中的key,如:

<s:textfield name="realname" key="user"/>

配置部署好后可以在jsp页面测试下index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%@ taglib uri="/struts-tags" prefix="s"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head><title>My JSP 'index.jsp' starting page</title> </head><body><s:text name="welcome"></s:text> </body></html>

在action中测试

package struts.test.action;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;public class NativeAction extends ActionSupport {@Overridepublic String execute() throws Exception {ActionContext.getContext().put("message", this.getText("welcome"));return "success";}}showInfo.jsp<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head><title>My JSP 'showInfo.jsp' starting page</title> </head><body>${message } </body></html>struts.xml<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"""><struts><constant name="struts.custom.i18n.resources" value="csdn" /><package name="csdn" namespace="/control" extends="struts-default"><action name="native" class="struts.test.action.NativeAction"><result name="success">/WEB-INF/page/showInfo.jsp</result></action></package></struts>

要克服生活的焦虑和沮丧,得先学会做自己的主人

Struts2之国际化

相关文章:

你感兴趣的文章:

标签云: