- 浏览: 983000 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (223)
- JDBC技术 (29)
- Java Base (21)
- SSH框架的集合 (5)
- Javascript部分 (16)
- Sping2.5框架 (6)
- Hibernate框架 (19)
- JDBC中的数据库连接 (5)
- Ajax技术应用 (9)
- Java工具包下载 (3)
- Database (4)
- Java Web (13)
- 我的生活 (4)
- Struts2 (25)
- S2SH (1)
- Prototype (1)
- jfreeChart (5)
- JPA (7)
- JBPM (1)
- JasperReport (6)
- DWR (1)
- freeMark (2)
- IBatis (2)
- FCKeditor (2)
- POI (1)
- JQuery (6)
- JSON (1)
- JavaMail (3)
- Flex (2)
- CSS收藏夹 (1)
- 润乾报表 (2)
- 开源技术 (1)
- Android (2)
- Android_UI (1)
- Android_OS (6)
- Android_OpenLibs (3)
- Volley (1)
- JS_OpenLibs (1)
- Hessian (3)
- OS (1)
最新评论
-
damoluomu:
简单易懂
Java Web开发Session超时设置 -
di1984HIT:
学习了~~~~~~
Java Web开发Session超时设置 -
lord_is_layuping:
...
Java Web开发Session超时设置 -
15111285554:
...
Java Web开发Session超时设置 -
sfg1314:
暂停后重新下载就会报错:ClientAbortExceptio ...
Java Web 文件下载之断点续传
Struts2的类型转换:
一,局部类型转换(对某个action中的字段进行类型转换):
1,写一个针对该action的要转换的字段的转换器,继承DefaultTypeConverter,重写convertValue方法
2,在该action同一个目录下(同一包下) 新建一个xxx-conversion.properties文件。xxx是该action的类名
规则:需要字段名=该字段的转换器
如: point=com.mengya.converter.PointConverter
...(若还有其它的字段需要转化则继续写)
3,这样写只能针对该action里的字段进行转换,其它的action不行,当然也可以配置其它的action的转换器
4,对于字符串,数字,日期Struts2内置的类型转换。
二,全局类型转换
1,在src(即class下面)下面新建一个xwork-conversion.properties文件。
规则:需要转换的类=该类的转换器
如:com.mengya.util.Point=com.mengya.converter.PointConverter
三,转换器:
1,继承DefaultTypeConverter
如:
@Override
public Object convertValue(Map context, Object value, Class toType) {
// 要将字符串转换成point类
if (toType == Point.class) {
String[] str = (String[]) value;
String paramValue = str[0];
String[] p = paramValue.split(",");
int x = Integer.parseInt(p[0]);
int y = Integer.parseInt(p[1]);
Point point = new Point();
point.setX(x);
point.setY(y);
return point;
// 要将point类转换成字符串
} else if (toType == String.class) {
Point point = (Point) value;
return "X=" + point.getX() + " Y=" + point.getY();
}
return null;
}
2,继承StrutsTypeConverter
如:
// 从String转换成一个对象
@Override
public Object convertFromString(Map context, String[] value, Class toType) {
String paramValue = value[0];// 取第一个元数,因为页面没有相同的字段名
String[] params = paramValue.split(",");// 将","把用户所输入的字符串分隔开,即取得x与y的值
int x=Integer.parseInt(params[0]);
int y=Integer.parseInt(params[1]);
Point p=new Point();
p.setX(x);
p.setY(y);
return p;
}
// 从一个对象转换成一个字符串
@Override
public String convertToString(Map context, Object value) {
Point p=(Point) value;
return "[X="+p.getX()+",Y="+p.getY()+"]";
}
四,集合类型属性转换器,如action中有一个集合类型的属性也可以进行转换
public class PointListConverter extends StrutsTypeConverter {
// 从String[]转换成List<Point>
@Override
public Object convertFromString(Map context, String[] value, Class toType) {
List<Point> pointList = new ArrayList<Point>();
for (String str : value) {
Point p = new Point();
String[] s = str.split(",");
p.setX(Integer.parseInt(s[0]));
p.setY(Integer.parseInt(s[1]));
pointList.add(p);
}
return pointList;
}
// 从List<Point>集合转换成Stirng
@Override
public String convertToString(Map context, Object toType) {
List<Point> pointList = (List<Point>) toType;
String value = "";
for (int i = 0; i < pointList.size(); i++) {
value = value + "[X=" + pointList.get(i).getX() + ",Y=" + pointList.get(i).getY() + "]";
}
return value;
}
}
五,说明:若action有一个point属性在jsp页面可以这样自己赋值:
<s:textfield name="point.x" label="X"></s:textfield>
<s:textfield name="point.y" label="Y"></s:textfield>
- Struts2_2.rar (3.2 MB)
- 下载次数: 39
发表评论
-
Struts2 + JasperReport应用二:jasperReport Web形式打印
2010-02-02 16:16 5241将jasperReport设计文件和编译文件放到webRoot ... -
Struts2 + JasperReport应用一:导PDF,Excel,HTML显示
2010-01-29 16:34 9852我用的是struts2.1.6,从struts2的自带的dem ... -
Struts2 标签使用简介
2009-12-23 19:33 2629web.xml配置如下: <fil ... -
Struts2 的OGNL使用简介
2009-12-22 13:25 2332<div align="center" ... -
POI与Struts2的使用 poi-2.5.1.jar
2009-09-25 17:43 4861一.POI 简介 Jakarta POI 是apache的子项 ... -
jFreeChart与Struts2的组合,将jFreeChart作为显示视图
2009-09-25 16:26 1461jFreeChart与Struts2的组合: 一,加 ... -
Struts2与Spring2.0的组合
2009-09-09 09:46 1023Struts2与Spring的集成: 一,加入Str ... -
Struts2的异常处理
2009-09-07 13:41 1362Struts2的异常处理: 1,定义自己的异常信息类:继承Ex ... -
Struts2.0深入学习 Strust2与Servlet API,Action多方法调用,result标签的type的类型
2009-09-06 11:08 4412Struts2深入探索: 1,package中的ab ... -
Struts2.0深入学习 命名空间,模型驱动,表单重复提交
2009-09-06 11:04 1847Struts2深入探索: 1,package中的ab ... -
Struts2国际化详解
2009-09-03 15:32 2697Struts2国际化: 1,国际 ... -
Struts2文件下载
2009-09-02 20:09 10589Struts2文件下载: Struts2文件下载对应将一个In ... -
设置Struts2文件上传的类型和大小
2009-09-02 20:09 5201设置Struts2文件上传的类型和大小: 在struts. ... -
Struts2多文件上传
2009-09-02 20:08 2438Struts2多文件上传: 在Action中配置三个属性: p ... -
Struts2文件上传详解
2009-08-31 17:27 2366Struts2文件上传: 一:请选参看Struts2_9中的S ... -
Struts2.0文件上传原理
2009-08-31 13:12 3047Struts2文件上传默认采用apache的文件上传的包,新建 ... -
Struts2的监听器的使用
2009-08-25 19:02 2511Struts2的监听器: 一,建立监听器: ... -
Struts2的拦截器的使用详解
2009-08-25 18:59 2359Struts2的拦截器: 一,拦截器的使用: ... -
Struts2拦截器原理分析
2009-08-25 18:55 2356第一步:创建目标对象的接口 /** * 目标对象的接口 ... -
Struts2的检证框架详解
2009-08-25 13:00 2424Struts2的检证框架: 一,根据字段校验(为每一 ...
相关推荐
Struts 2.0框架中出现的许多特性旨在让Struts更容易使用: · 改进的设计: 与Struts 1相比,Struts 2的所有类都基于接口,核心接口独立于HTTP。这些API并不依赖服务器小程序API。 · 简化的Action: Struts 2 Action...
8.3.3 关联转换器与UI Component实例 8.3.4 转换器的生命周期 8.3.5 定制转换器 8.4 Faces验证系统 8.4.1 Long Range Validator 8.4.2 Double Range Validator 8.4.3 Length Validator 8.4.4 必需的工具Required ...
8.3.3 关联转换器与UI Component实例 8.3.4 转换器的生命周期 8.3.5 定制转换器 8.4 Faces验证系统 8.4.1 Long Range Validator 8.4.2 Double Range Validator 8.4.3 Length Validator 8.4.4 必需的工具Required ...
12.1.2 Struts 2.0与Struts 1.x框架的区别 215 12.2 MyEclipse创建基于Struts 2.0框架的项目 215 12.2.1 下载Struts 2.0开发包 216 12.2.2 创建Struts 2.0项目 216 12.2.3 配置Struts 2.0项目 217 12.2.4 创建Struts...
19.3.1. 使用消息转换器 19.3.2. SessionCallback 和ProducerCallback 19.4. 接收消息 19.4.1. 同步接收 19.4.2. 异步接收 - 消息驱动的POJOs 19.4.3. SessionAwareMessageListener 接口 19.4.4. ...
3.4.4 绑定到Bean属性的转换器 159 3.5 使用验证器进行输入校验 161 3.5.1 输入校验概述 161 3.5.2 JSF内置校验器 162 3.5.3 校验失败后的错误消息 163 3.5.4 必填校验器 165 3.6 自定义校验器 166 3.6.1 开发自定义...
Struts2框架介绍、工作原理与架构分析、6大配置文件分析使用通配符定义action、动态方法调用,ActionContext及ServletActionContext使用,模型驱动、属性驱动,默认转换器的介绍,中的表单校验,中的国际化,文件...
72.8. struts2.0的常用标签 71 72.9. action是单实例还是多实例,为什么? 73 72.10. Struts的validate框架是如何验证的? 74 72.11. dispatchAction是用什么技术实现的? 74 72.12. struts2.0的mvc模式?与struts...
5. 校验,数据绑定,BeanWrapper,与属性编辑器 5.1. 简介 5.2. 使用Spring的Validator接口进行校验 5.3. 从错误代码到错误信息 5.4. Bean处理和BeanWrapper 5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建...
5. 校验,数据绑定,BeanWrapper,与属性编辑器 5.1. 简介 5.2. 使用Spring的Validator接口进行校验 5.3. 从错误代码到错误信息 5.4. Bean处理和BeanWrapper 5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建...
6.4.3 在Spring 2.0里声明事务 6.4.4 定义注释驱动事务 6.5 小结 第7章 保护Spring 7.1 Spring Security介绍 7.2 验证用户身份 7.2.1 配置Provider Manager 7.2.2 根据数据库验证身份 7.2.3 根据LDAP仓库...
6.4.3 在Spring 2.0里声明事务 6.4.4 定义注释驱动事务 6.5 小结 第7章 保护Spring 7.1 Spring Security介绍 7.2 验证用户身份 7.2.1 配置Provider Manager 7.2.2 根据数据库验证身份 7.2.3 根据LDAP仓库...
13、swtich 是否能作用在byte 上,是否能作用在long 上,是否能作用在String上? 9 14、编程题: 用最有效率的方法算出2 乘以8 等於几? 9 15、有没有length()这个方法? String 有没有length()这个方法? 9 16、在JAVA ...
13、swtich 是否能作用在byte 上,是否能作用在long 上,是否能作用在String上? 9 14、编程题: 用最有效率的方法算出2 乘以8 等於几? 9 15、有没有length()这个方法? String 有没有length()这个方法? 9 16、在JAVA ...
6.4.3在spring2.0里声明事务 6.4.4定义注释驱动事务 6.5小结 第7章保护spring 7.1springsecurity介绍 7.2验证用户身份 7.2.1配置providermanager 7.2.2根据数据库验证身份 7.2.3根据ldap仓库进行身份验证 ...
5. 校验,数据绑定,BeanWrapper,与属性编辑器 5.1. 简介 5.2. 使用Spring的Validator接口进行校验 5.3. 从错误代码到错误信息 5.4. Bean处理和BeanWrapper 5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建的...
5. 校验,数据绑定,BeanWrapper,与属性编辑器 5.1. 简介 5.2. 使用Spring的Validator接口进行校验 5.3. 从错误代码到错误信息 5.4. Bean处理和BeanWrapper 5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建...
length属性和length()方法有什么区别 finally块中的代码什么时候被执行 Java中的异常处理机制的简单原理和应用。 java socket java序列化 JVM加载class文件的原理 双亲委派模型 为什么要自定义类加载器 如何自定义...