- 浏览: 164994 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
zhousheng193:
非常感谢LZ
在JSP页面及servlet的doGet()方法中处理汉字乱码的问题 -
jie523314:
学习下。。。
读取XML文件
可以用struts.xml或struts.properties可用于覆盖default.properties的属性配置;
如:
default.properties
那么我们可以在struts.xml里面这样配置进行配置:
struts.properties
这两种配置都可以,区别就是在服务器在执行类加载的时候会先加载struts.xml后加载struts.properties
注意:
1。在配置他的资源文件明前缀的时候可以指定在具体的那个目录下面,如果我不是放在src目录下面,而是放在com.test.action的目录下,那么可以这么写
struts.custom.i18n.resources=com.test.action.messageResources
2。在命名的时候要加上区域和本地方言,即在这个action目录下面建立
messageResources_zh_CN.properties
messageResources_en_US.properties
3。在配置中文的时候不能保存那么我们可以在终端里面
执行native2ascii 这个程序来进行转码,转为ascii码
当然,也可以对文件进行转换native2ascii -encoding utf-8 /home/soft22/132.txt /home/soft14/456.txt
[soft14@hzserver1 ~]$ native2ascii
我是中国人
\u6211\u662f\u4e2d\u56fd\u4eba
然后修改浏览器的使用语言,拦截器就可以修改当前客户端的local属性,服务器会去找相应的配置资源文件信息在客户端显示。
也可以实现页面修改
如:
default.properties
### Load custom default resource bundles # struts.custom.i18n.resources=testmessages,testmessages2 ### workaround for some app servers that don't handle HttpServletRequest.getParameterMap() ### often used for WebLogic, Orion, and OC4J struts.dispatcher.parametersWorkaround = false
那么我们可以在struts.xml里面这样配置进行配置:
1. <constant name="struts.custom.i18n.resources" value="messageResources"></constant>
struts.properties
struts.custom.i18n.resources=messageResources
这两种配置都可以,区别就是在服务器在执行类加载的时候会先加载struts.xml后加载struts.properties
注意:
1。在配置他的资源文件明前缀的时候可以指定在具体的那个目录下面,如果我不是放在src目录下面,而是放在com.test.action的目录下,那么可以这么写
struts.custom.i18n.resources=com.test.action.messageResources
2。在命名的时候要加上区域和本地方言,即在这个action目录下面建立
messageResources_zh_CN.properties
messageResources_en_US.properties
3。在配置中文的时候不能保存那么我们可以在终端里面
执行native2ascii 这个程序来进行转码,转为ascii码
当然,也可以对文件进行转换native2ascii -encoding utf-8 /home/soft22/132.txt /home/soft14/456.txt
引用
[soft14@hzserver1 ~]$ native2ascii
我是中国人
\u6211\u662f\u4e2d\u56fd\u4eba
引用
jsp页面可以用struts标签的key属性来调用资源文件里面的key
a.了解什么是国际化、Struts2国际化原理(i18n)
b.JSP如何实现国际化、Action国际化支持
JSP:<s:text name="">标签和表单输入性组件<s:textfield key=""/>,不需要在使用label属性
Action: ActionSupport提供了getText()方法
c.资源文件
(熟悉)全局资源文件:在struts.properties或struts.xml中由struts.custom.i18n.resources指定
临时资源文件:由<s:i18n>指定
包范围的资源文件:在任意包下创建package_语言_区域.properties
Action范围的资源文件:在Action同级目录下创建Action类名_语言_区域.properties
a.了解什么是国际化、Struts2国际化原理(i18n)
b.JSP如何实现国际化、Action国际化支持
JSP:<s:text name="">标签和表单输入性组件<s:textfield key=""/>,不需要在使用label属性
Action: ActionSupport提供了getText()方法
c.资源文件
(熟悉)全局资源文件:在struts.properties或struts.xml中由struts.custom.i18n.resources指定
临时资源文件:由<s:i18n>指定
包范围的资源文件:在任意包下创建package_语言_区域.properties
Action范围的资源文件:在Action同级目录下创建Action类名_语言_区域.properties
<%@ page language="java" pageEncoding="UTF-8"%> <%@taglib prefix="s" uri="/struts-tags"%> <%@page isELIgnored="false" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>My JSP 'index.jsp' starting page</title> </head> <body> <hr> <s:form action="" method="post"> <s:textfield key="login.username"></s:textfield><br> <s:textfield key="login.sex"></s:textfield> <s:submit/><s:reset/> </s:form> </body> </html>
然后修改浏览器的使用语言,拦截器就可以修改当前客户端的local属性,服务器会去找相应的配置资源文件信息在客户端显示。
也可以实现页面修改
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib uri="/struts-tags" prefix="s" > <!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>Insert title here</title> <script type="text/javascript"> function changeLoc(){ var s = document.getElementById("loc").value; window.location.href = "hello.action?loc="+s; } </script> </head> <body> <s:select id="loc" name="loc" onchange="changeLoc()" list='#{"zh_CN":"中文","en_US":"英文"}'></s:select> <hr> <s:text name="msg.hell"></s:text><br> <s:textfield key="user" name="name"></s:textfield> <s:fielderror></s:fielderror> </body> </html>
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN" "http://struts.apache.org/dtds/struts-2.1.7.dtd"> <struts> <package name="myfirst1" extends="struts-default"> <action name="regist" class="tarena.actions.RegistAction"> <result name="success">/ok.html</result> <result name="input">/regist.jsp</result> </action> <!-- RegistAction-regist_add-validation.xml --> <!-- RegistAction-regist_update-validation.xml --> <!-- 如果Action有多个业务方法,可以采取以下方法配置 <action name="regist_*" class="tarena.actions.RegistAction" method="{1}"> <result name="success">/ok.html</result> <result name="input">/regist.jsp</result> </action> --> <action name="hello" class="tarena.actions.HelloAction"> <result name="success">/i18n.jsp</result> <result name="input">/i18n.jsp</result> </action> </package> </struts>
package tarena.actions; import java.util.Locale; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; public class HelloAction extends ActionSupport{ private String loc; public void validate(){ System.out.println(loc); String[] code = loc.split("_"); Locale locale = new Locale(code[0],code[1]); ActionContext.getContext().setLocale(locale); this.addFieldError("msg",this.getText("msg.error")); } public String execute(){ System.out.println(loc); String[] code = loc.split("_"); Locale locale = new Locale(code[0],code[1]); ActionContext.getContext().setLocale(locale); return "success"; } public String getLoc() { return loc; } public void setLoc(String loc) { this.loc = loc; } }
发表评论
-
struts2的select标签的标签显示问题
2010-09-20 20:00 861引用使用select的标签的时候第一个显示标签怎么都弄不出来纠 ... -
解决long类型转换成date类型的转换通过struts2在页面显示
2010-09-20 17:05 1246由于数据库里面的时间类型统一的为long类型,但是到页面取值的 ... -
何时使用转发,何时使用重定向
2010-09-19 12:45 1651转发:两个jsp共享一个request请求 重定向:放弃当前r ... -
struts标签的使用总结
2010-09-17 21:01 690总结了好久才做到了 自己想要的标签使用方法,具体看代码 ... -
jsp页面导入外部文件的3种方法
2010-09-15 13:27 1779第一种: jsp 的include指令引入外部文件 <% ... -
WARN - Got result of null when trying to get Boolean.
2010-09-12 18:50 1749今天,真倒霉给注册页面添加框架验证结果却是 WARN - G ... -
Struts2内建拦截器的简要介绍
2010-09-07 19:14 921Struts2内建拦截器的简要介绍 ali ... -
struts2自定类型转换器
2010-09-04 14:28 731类型转换 a.自定类型转换器 ... -
taglib引入struts标签的使用
2010-09-03 21:01 1420<%@ page language="java ... -
struts2中ognl表达式的理解和用法
2010-09-03 19:40 1344ognl表达式的使用如下面的例子: 总的来说,就是 actio ... -
熟悉Struts2的配置文件
2010-09-03 19:28 628熟悉Struts2的配置文件 a.内置配置文件 s ... -
深入Struts2的配置文件
2010-09-03 13:53 1185struts.xml文件中每个元素的含义. 1) Bean ... -
struts2的基本流程(转)
2010-09-03 10:21 897大致上 ,Struts2 框架由三个部分组成 : ... -
初步理解和使用Struts2拦截器的原理与实现
2010-09-02 11:23 1224一、理解Struts2拦截器 1. Struts2拦截器是在 ... -
The Struts dispatcher cannot be found
2010-09-02 09:42 986The Struts dispatcher cannot be ... -
struts2.0笔记(1)
2010-08-30 19:51 672了解Struts2发展历程及其特点 a.支持 ... -
两种方式修改struts2的访问路径以.do为结尾的方式
2010-08-30 19:24 1417struts2的核心包中找到:org.apache.strut ... -
帮你彻底解决eclipse(myeclipse)中写struts.xml配置文件时,没有提示功能的烦恼
2010-08-30 18:30 2252其实,在自己写struts.xml ... -
struts2基本配置(基本一个登陆)
2010-08-30 17:55 928一、导struts2的包几个包 1.struts2-c ...
相关推荐
在"AjaxTest"这个压缩包文件中,可能包含了实现这一功能的源代码,包括JSP页面、Struts2 Action类、相关的JavaScript脚本以及可能的配置文件。通过研究这些文件,你可以深入理解如何将AJAX、Struts2和JSP结合,实现...
Struts2国际化(i18n)是Java Web开发中一个关键的概念,它允许应用程序根据用户的地域设置显示不同的语言和文化信息。这个过程涉及到资源文件的创建和使用,以实现多语言支持。以下是对Struts2国际化进行详细解释的...
在本篇文章中,我们将深入探讨如何解决Struts + Hibernate + MyEclipse + Tomcat + MySQL环境中出现的乱码问题。该问题通常出现在处理中文字符时,由于编码设置不当导致中文显示为乱码或无法正常读取。为了确保系统...
在"Struts2框架实现图书管理系统"这个项目中,我们将深入探讨如何利用Struts2来设计和实现一个用于管理图书信息的系统,包括对图书的基本信息进行添加、删除、修改和查询等核心功能。同时,项目还涉及到拦截器的使用...
在Struts2框架中,`Struts2标签`是其核心组件之一,它们用于构建用户界面,使得开发者能够更加便捷地控制页面渲染和业务逻辑的交互。这些标签通常在JSP页面中使用,替代了传统的Java脚本和JSTL,使代码更易于阅读和...
2. **struts2-convention-plugin.jar**:此插件支持基于约定优于配置(Convention over Configuration)的开发模式,允许开发者省去大量的XML配置,只需按照一定的命名规则组织类和方法,Struts 2就能自动识别并进行...
在权限管理系统中,EasyUI可以用于构建用户友好的界面,通过数据绑定技术与后台的Struts2 Action进行交互,实现数据的增删改查和权限配置。 结合Struts2和EasyUI,我们可以快速构建一个具备用户管理、角色管理和...
- WEB-INF目录:包含web.xml配置文件,定义了Servlet容器的配置,以及struts-config.xml或struts2的struts.properties/struts.xml配置文件,定义了Struts框架的配置。 - resources目录:可能包含数据库连接配置文件...
Struts2 是一个基于 Model-View-Controller(MVC)设计模式的 Java Web 框架,用于简化和标准化应用程序的开发流程,而 DWR(Direct Web Remoting)则是一个允许 JavaScript 在浏览器端与服务器端 Java 对象进行交互...
这个页面通常会使用Struts 2的表单标签库来生成表单元素,例如文本框、下拉菜单等。为了提高用户体验,你可以考虑使用预定义的CSS样式,如Wufoo提供的样式,来美化表单布局。 #### 七、配置客户端和服务端验证 ...
在这个主题"struts2_i18n"中,我们将深入探讨Struts2框架中的国际化实现机制。 首先,了解i18n的基本概念是必要的。i18n代表“国际化”,这里的数字18代表'i'和'n'之间的字母数量。国际化是为了使软件能够适应不同...
如果你的应用使用Struts框架,Struts提供了内置的国际化支持。在 Struts 配置文件(struts-config.xml)中,你可以定义全局的 `message-resources` 元素,指定资源包的位置。在ActionForm或Action类中,可以使用 `...
Struts2是一个强大的Java web开发框架,用于构建和维护可扩展且易于管理的企业级应用程序。这个框架基于MVC(Model-View-Controller)设计模式,为开发者提供了丰富的功能,包括动作映射、拦截器、结果类型等,使得...
文件名为 "bysj2" 的压缩包可能包含了该图书管理系统的源代码、配置文件、数据库脚本等相关资源。解压后,开发者可以研究其目录结构,理解 EXT 和 Struts1.2 如何协同工作,查看具体的 Action 类如何处理请求,以及 ...
在本项目中,Struts2可以集成JSON插件,使得Action可以直接返回JSON对象,前端JavaScript代码则可以解析这些JSON数据,动态更新下拉列表,实现三级联动效果。JSON对象通常包含省、市、区的ID和名称,前端根据这些...
总的来说,这个“文章管理系统(struts+jsp)”项目涵盖了Java Web开发的多个重要知识点,包括MVC架构、Struts框架的使用、JSP页面设计、数据库操作、国际化、Web编辑器集成、分类管理、文章操作以及全文搜索。...
Struts支持通过配置资源文件实现国际化,使应用能够适应不同语言环境。 ##### 3.Validator验证框架 Validator框架是Struts的一个扩展,提供了丰富的验证规则,帮助开发者进行客户端和服务端的验证。 综上所述,...
Struts2.0提供了一种更加灵活的控制器层,支持多种视图技术,如JSP、FreeMarker等,并引入了强大的拦截器(Interceptor)机制,增强了异常处理和国际化等功能。 二、Struts2.0的标签库 Struts2.0的标签库是其强大之...
- **国际化设置**:在Struts配置文件中设置国际化选项,根据用户请求动态加载不同的资源文件。 #### 五、Struts表单处理 - **表单元素**:使用Struts标签库中的表单元素,如文本框、下拉列表等。 - **ActionForm类*...
4. **配置文件**:在Struts配置文件(struts-config.xml)中,为Action类配置相应的映射,确保用户的选择能够正确地路由到Action。 5. **JavaScript**:为了实现联动效果,通常需要使用JavaScript或者jQuery来监听...