- 浏览: 990250 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (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 5270将jasperReport设计文件和编译文件放到webRoot ... -
Struts2 + JasperReport应用一:导PDF,Excel,HTML显示
2010-01-29 16:34 9883我用的是struts2.1.6,从struts2的自带的dem ... -
Struts2 标签使用简介
2009-12-23 19:33 2661web.xml配置如下: <fil ... -
Struts2 的OGNL使用简介
2009-12-22 13:25 2356<div align="center" ... -
POI与Struts2的使用 poi-2.5.1.jar
2009-09-25 17:43 4888一.POI 简介 Jakarta POI 是apache的子项 ... -
jFreeChart与Struts2的组合,将jFreeChart作为显示视图
2009-09-25 16:26 1483jFreeChart与Struts2的组合: 一,加 ... -
Struts2与Spring2.0的组合
2009-09-09 09:46 1054Struts2与Spring的集成: 一,加入Str ... -
Struts2的异常处理
2009-09-07 13:41 1384Struts2的异常处理: 1,定义自己的异常信息类:继承Ex ... -
Struts2.0深入学习 Strust2与Servlet API,Action多方法调用,result标签的type的类型
2009-09-06 11:08 4442Struts2深入探索: 1,package中的ab ... -
Struts2.0深入学习 命名空间,模型驱动,表单重复提交
2009-09-06 11:04 1883Struts2深入探索: 1,package中的ab ... -
Struts2国际化详解
2009-09-03 15:32 2723Struts2国际化: 1,国际 ... -
Struts2文件下载
2009-09-02 20:09 10611Struts2文件下载: Struts2文件下载对应将一个In ... -
设置Struts2文件上传的类型和大小
2009-09-02 20:09 5227设置Struts2文件上传的类型和大小: 在struts. ... -
Struts2多文件上传
2009-09-02 20:08 2461Struts2多文件上传: 在Action中配置三个属性: p ... -
Struts2文件上传详解
2009-08-31 17:27 2397Struts2文件上传: 一:请选参看Struts2_9中的S ... -
Struts2.0文件上传原理
2009-08-31 13:12 3068Struts2文件上传默认采用apache的文件上传的包,新建 ... -
Struts2的监听器的使用
2009-08-25 19:02 2534Struts2的监听器: 一,建立监听器: ... -
Struts2的拦截器的使用详解
2009-08-25 18:59 2379Struts2的拦截器: 一,拦截器的使用: ... -
Struts2拦截器原理分析
2009-08-25 18:55 2381第一步:创建目标对象的接口 /** * 目标对象的接口 ... -
Struts2的检证框架详解
2009-08-25 13:00 2454Struts2的检证框架: 一,根据字段校验(为每一 ...
相关推荐
五、转换器(Converter)在Struts2.0中的作用 转换器是Struts2.0框架中的一个重要概念,它负责将请求参数转换为Java类型的数据。Struts2.0内置了一系列的转换器,如默认转换器、日期转换器等,同时也支持自定义转换...
8. **类型转换(Type Conversion)**: Struts 2.0自动进行类型转换,将HTTP请求参数转换为Action类的属性,减轻了开发者的工作负担。 9. **国际化(i18n)支持**: Struts 2.0提供了强大的国际化支持,开发者可以...
以下是对这些JAR包及其在Struts2.0框架中的作用的详细说明: 1. **struts2-core.jar**:这是Struts2的核心库,包含了Action、Result、Interceptor等关键组件的实现。它提供了一个灵活的请求处理机制,使得开发者...
此外,开发者还可以自定义转换器来处理更复杂的数据类型转换。 #### 四、构建视图:标签和结果 第三部分“Building the View: Tags and Results”专注于如何利用Struts 2.0提供的标签库和结果处理机制来构建动态...
- 在Action类中声明需要转换的属性,并在表单提交时,Struts 2会自动调用相应的类型转换器将字符串数据转换为`CustomDate`对象。 4. **简单实例** 假设我们有一个简单的Web表单,用户输入日期,我们可以通过...
本篇将详细介绍Struts2.0常用5个核心JAR包的功能及其在开发中的作用。 1. **struts2-core.jar**:这是Struts2的核心库,包含了框架的主要组件,如Action类、Result类型、Interceptor拦截器、ValueStack以及OGNL...
在`PropertyTag`中,`doStartTag()`方法会初始化一些属性,如属性路径、转换器等,而`doEndTag()`方法则负责根据属性路径查找值,并将其输出到页面。这个过程中,OGNL表达式起到了关键作用,它能解析复杂的属性路径...
7. **类型转换和数据校验**:Struts 2.0内置了类型转换和数据校验机制,可以自动处理HTTP请求参数到Action属性的转换,并对数据进行有效性验证。 8. **Action结果映射**:Action结果可以映射到不同的视图,实现动态...
1. **可视化配置:** 用户可以通过图形界面配置Struts2.0的各种属性,而无需手动编写XML配置文件。 2. **代码生成:** 自动生成Struts2.0所需的Action类、配置文件等,大大减少了手工编码的工作量。 3. **项目模板:...
在Action类中,你可以覆盖`setters`方法来实现自定义类型转换,或者在配置文件中指定转换器。 总的来说,Struts2.0提供了强大的MVC支持,包括便捷的表单标签、内置的验证机制和灵活的类型转换,这使得开发Java Web...
Struts2.0是Java Web开发中非常流行的一个MVC框架,它极大地简化了Web应用程序的构建过程。在Struts2中,转换器(Converter)扮演着数据绑定和格式化的重要角色,使得开发者能够对输入的数据进行有效控制和处理。本...
Struts2.0是Java Web开发中的一个强大框架,它基于Model-View-Controller(MVC)设计模式,为开发者提供了构建可维护性高、结构清晰的Web应用程序的工具。这个"struts2.0中文帮助"文档集合,无疑是对于正在学习或...
视频11介绍了如何自定义类型转换器,处理复杂的类型转换场景。 6. **动态加载国际化资源文件**:视频13演示了如何通过超链接动态加载不同的语言资源文件,实现多语言支持,提升用户体验。 7. **Preparable拦截器**...
以下是关于Struts2.0工具包及其组成部分的详细说明: 1. **Struts2-core-2.0.8.jar**:这是Struts2框架的核心库,提供了核心的控制器、拦截器、配置管理、结果类型以及异常处理等功能。其中,`Action`类是业务逻辑...
Struts2.0是Java Web开发中非常重要的一个框架,它基于MVC(Model-View-Controller)设计模式,极大地简化了Java应用的构建。这个"struts2.0帮助文档"是开发者们宝贵的资源,提供了全面的API参考、指南和最佳实践。...
在Struts 2.0框架中,转换器(Converter)扮演着至关重要的角色,它是将用户界面提交的数据转化为模型对象属性的关键组件。Struts 2的魔术师——转换器,使得数据绑定变得更加灵活和强大,它能处理各种类型的数据...
在类型转换上,Struts 2借助OGNL进行转换,比Struts 1的Commons-Beanutils更智能,提供了基本类型和常见对象的转换器,且转换器配置更加灵活。 至于数据校验,Struts 2提供了更方便的验证机制,可以在Action类的...
7. **类型转换**:Struts2内置了类型转换器,能够自动将请求参数转换为Action属性所需的类型,减轻了开发者的负担。 8. **主题和皮肤**:Struts2允许开发者定义和切换不同的主题和皮肤,提供了良好的用户体验。 在...
2. **xwork-core.jar**:XWork是Struts2的基础,提供了命令模式、转换器、验证器等功能。 3. **ognl.jar**:Object-Graph Navigation Language,用于在框架中进行对象属性的访问和表达式语言支持。 4. **freemarker....