`

Struts中国际化的简单例子

阅读更多

application_tmp.properties

word.key=word
hello.key=你好
aaaa.key=这个bean存在.
bbbb.key=这个bean不存在.
error.key=发生一个错误,请检查!
params.key=暗暗暗暗暗暗啊,{0},不?徊徊徊徊徊徊?{1},我我我我我我我,{2},的的的的的的的

编码转换命令:

D:\yangjin\test3>native2ascii -encoding GBK .\web-inf\classes\test\application_cn_tmp.properties .\web-inf\classes\test\application_zh_CN.properties

application_zh_CN.properties

word.key=word
hello.key=\u4f60\u597d
aaaa.key=\u8fd9\u4e2abean\u5b58\u5728.
bbbb.key=\u8fd9\u4e2abean\u4e0d\u5b58\u5728.
error.key=\u53d1\u751f\u4e00\u4e2a\u9519\u8bef\uff0c\u8bf7\u68c0\u67e5\uff01
params.key=\u6697\u6697\u6697\u6697\u6697\u6697\u554a,{0},\u4e0d\u4e0d\u4e0d\u4e0d\u4e0d\u4e0d\u4e0d\u4e0d,{1},\u6211\u6211\u6211\u6211\u6211\u6211\u6211,{2},\u7684\u7684\u7684\u7684\u7684\u7684\u7684

application.properties

word.key=word
hello.key=hello
aaaa.key=this bean is present.
bbbb.key=this bean isn't present.
error.key=raise a error, please check!
params.key=AAAAAAAAAAA,{0},BBBBBBBBBB,{1},CCCCCCCCCCC,{2},DDDDDDDDDD

application_en.properties //在字符串后加上”_“,以便和默认文件相区别。

word.key=word_
hello.key=hello_
aaaa.key=this bean is present._
bbbb.key=this bean isn't present._
error.key=raise a error, please check!_
params.key=AAAAAAAAAAA,{0},BBBBBBBBBB,{1},CCCCCCCCCCC,{2},DDDDDDDDDD_

HelloBean.java

.......

private boolean match(String str) {
Pattern p = Pattern.compile("[^0-9]+"); //正则表达式验证:如果字符串中含有数字,返回错误。
Matcher m = p.matcher(str);
return m.matches();
}
public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) {
ActionErrors errors = new ActionErrors();
if (word == null || !match(word)) {
errors.add("word", new ActionMessage("error.key"));
}
return errors;
}

struts-config.xml

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE struts-config PUBLIC '-//Apache Software Foundation//DTD Struts Configuration 1.1//EN' 'http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd'>

<struts-config>
<form-beans>
<form-bean name="helloBean" type="test.HelloBean" />
</form-beans>
<action-mappings>
<action path="/HelloAction" type="test.HelloAction" name="helloBean" scope="request" validate="true" input="/error.jsp">
<forward name="sayHello" path="/hello.jsp" />
</action>
</action-mappings>
<message-resources parameter="test.application"/>
</struts-config>

error.jsp

<%@ page contentType="text/html;charset=GBK" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<html:errors/>

结果:

将浏览器的“语言”选项设为"en"。

http://localhost:2000/test3/HelloAction.do?word=bi234

raise a error, please check!_

将浏览器的“语言”选项设为"zh_CN"。

http://localhost:2000/test3/HelloAction.do?word=bi234

发生一个错误,请检查!

分享到:
评论

相关推荐

    struts2简单例子

    这个“struts2简单例子”是初学者理解Struts2工作原理和核心概念的一个很好的起点。让我们深入探讨一下Struts2的基础知识。 1. **MVC架构**: MVC模式是软件设计中的一个经典模式,它将应用逻辑分为三个主要部分:...

    Struts+2.0中国际化处理

    Struts+2.0中国际化处理Struts+2.0中国际化处理

    Struts2+rest简单实例

    在这个"Struts2+rest简单实例"中,开发者创建了一个小型的示例应用,目的是帮助初学者快速理解如何在Struts2框架中集成RESTful服务。以下是这个实例中可能涉及的关键知识点: 1. **Struts2框架基础**:Struts2的...

    在Struts 2.0中国际化处理

    本文将详细解析Struts 2.0中国际化处理的关键知识点,包括其核心概念、实现步骤以及一些实用技巧。 ### Struts 2.0 国际化的核心概念 **1. 资源文件**:Struts 2.0使用资源文件存储各种语言的文本信息,通常是以`....

    struts2国际化例子源码

    总结,这个Struts2国际化例子源码展示了如何在Java web应用中实现多语言支持,通过配置Struts2框架、编写Action类、创建资源文件以及在JSP页面中使用标签,实现了对不同语言环境的适应。这个例子对于理解和实践...

    struts1国际化小实例

    给定的"struts1国际化实例"应该包含了一个简单的Web应用,可能包括以下几个部分: 1. `struts-config.xml`:包含了对资源文件的配置。 2. `message_resources.properties`和`message_resources_zh_CN.properties`:...

    struts2+rest简单实例

    在这个"struts2+rest简单实例"中,我们可以看到如何将这两种技术结合在一起,以创建一个更现代化、更灵活的应用程序。以下是一些关于Struts2和REST的关键知识点: 1. **Struts2核心概念**: - **Action类**:这是...

    struts2的简单实例

    这个“struts2的简单实例”将带你了解如何在实际项目中使用Struts2。 首先,我们需要理解Struts2的核心概念: 1. **Action类**:这是业务逻辑的载体,负责处理来自用户的请求。Action类通常继承自`...

    struts2简单实例

    总结,"struts2简单实例"展示了如何使用Struts2框架构建一个简单的学生信息查询功能,涵盖了配置文件、Action实现、数据传输以及视图展示等多个方面,是学习和理解Struts2工作原理的好例子。通过这个实例,开发者...

    struts2验证框架简单实例

    本实例将带你深入理解Struts2验证框架的使用,以及在实际操作中可能遇到的问题和解决方案。 首先,Struts2的验证框架主要基于两个组件:`Validation`和`Validator`。`Validation`是Action类的注解,而`Validator`则...

    struts2简单例子源码

    通过学习这个简单的Struts2例子,你可以了解到如何在实际项目中应用Struts2的类型转换和验证功能,这对于提高代码质量和用户体验都有着重要的作用。同时,这也是深入理解Struts2框架、提升Java Web开发技能的好途径...

    Struts2简单实例

    Struts2是一个强大的Java web应用程序框架,用于构建和维护可扩展、模块化和高度控制的MVC(模型-视图-控制器)结构的应用程序。它继承了Struts1的优点,并结合了其他框架如WebWork的核心特性,提供了更高效、灵活的...

    struts2-2.2.3简单环境搭建例子.zip

    struts2-2.2.3简单环境搭建例子.zip 可以直接运行的,培养自信从行动开始。 struts2-2.2.3简单环境搭建例子.zip 可以直接运行的,培养自信从行动开始。 struts2-2.2.3简单环境搭建例子.zip 可以直接运行的,培养...

    struts简单例子(4)

    这个"struts简单例子(4)"是一个专门为初学者准备的教程,旨在帮助他们理解并掌握Struts框架的基础用法。 在Struts框架中,模型(Model)通常由业务逻辑组件构成,负责处理数据;视图(View)是用户界面,展示数据;...

    Struts项目的简单例子

    在这个"Struts项目的简单例子"中,我们将探讨Struts框架的基本组成部分和如何创建一个简单的Struts2应用。 首先,让我们理解Struts2框架的核心概念: 1. **Action类**:在Struts2中,Action类是业务逻辑的载体,...

    struts2国际化+简单的标签+用户注册和登录

    总的来说,这个项目提供了一个基础的Struts2应用实例,展示了如何实现国际化、使用Struts2标签库,以及创建简单的用户注册和登录功能,尽管它并不涉及实际的数据存储。对于学习和理解Struts2框架的运作机制,这是一...

    struts2 jqurey ajax简单实例

    在描述中提到的"简单的struts2中应用jquery ajax小例子",可能包含以下几个步骤: 1. **配置Struts2**:首先,你需要在`struts.xml`配置文件中定义Action,例如: ```xml &lt;result type="json"&gt;/ajaxResult.jsp ...

    Struts2.0简单的入门例子

    本篇将通过一个简单的入门例子,带你了解并掌握Struts2的核心概念和基本用法。 首先,我们需要理解MVC模式。在MVC模式中,模型(Model)负责处理业务逻辑,视图(View)负责展示数据,而控制器(Controller)则负责...

    struts2的简单例子

    这个"struts2的简单例子"是一个适合初学者理解并实践Struts2框架的基础教程。 首先,我们需要了解Struts2的核心概念: 1. **Action类**:在Struts2中,Action类是业务逻辑的载体,它是控制器层的主要组成部分。一...

Global site tag (gtag.js) - Google Analytics