- 浏览: 120038 次
- 性别:
- 来自: 深圳
文章分类
最新评论
1,新建一个Point类,包含两个变量x,y。只有set,get方法
package com.test.bean; public class Point { private int x; private int y; public int getX() { return x; } public void setX(int x) { this.x = x; } public int getY() { return y; } public void setY(int y) { this.y = y; } }
2,新建input.jsp文件
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%> <%@ taglib prefix="s" uri="/struts-tags"%> <html> <body> <!-- 1,用户输入合法的Point类型的数据后,根据struts.xml文件的配置,会跳转到PointAction.java中处理 --> <!-- 2,PointAction在setPoint时发现在action目录下有一个PointAction-conversion.properties文件, <!-- 此时Struts知道会到PointConverter类中去做类型转换,变成 Point类型 --> <!-- 3,转换完成后,执行PointAction类中的execute转到output.jsp页面,output.jsp取PointAction页面的getPoint方法的返回值 --> <!-- 4,在得到返回值前,需要先到PointConverter方法再做类型转换,变成String类型 --> <!-- 5,如何确认哪个JavaBean对应哪个转换器?这是在xwork-conversion.properties中设置的 --> <!-- 6,如果想给某个实例指定特定的转换器,就在同个包目录下,建立 类名+"-conversion.properties"文件,如Point2Action-conversion.properties --> <s:form action="pointConvert"> <s:textfield name="point" label="point"></s:textfield> <s:textfield name="age" label="age"></s:textfield> <s:textfield name="username" label="username"></s:textfield> <s:textfield name="date" label="birthday"></s:textfield> <s:submit></s:submit> </s:form> </body> </html>
3,建立转换类
package com.test.convert; import java.util.Map; import ognl.DefaultTypeConverter; import com.test.bean.Point; public class PointConvert extends DefaultTypeConverter { /** * 根据toType的类型来判断是从客户端到服务器端,还是从服务器端到客户端 */ public Object convertValue(Map context, Object value, Class toType) { //从客户端到服务端 if (Point.class == toType) { Point point = new Point(); String[] str = (String[]) value; String[] paramString = str[0].split(","); int x = Integer.parseInt(paramString[0]); int y = Integer.parseInt(paramString[1]); point.setX(x); point.setY(y); return point; } //从服务端到客户端 if (String.class == toType) { Point point = (Point) value; int x = point.getX(); int y = point.getY(); String resultString = "[x=" + x + ",y=" + y + "]"; return resultString; } return null; } }
4,建PointAction
package com.test.action; import java.util.Date; import com.opensymphony.xwork2.ActionSupport; import com.test.bean.Point; public class PointAction extends ActionSupport { private Point point; private int age; private String username; private Date date; public Point getPoint() { return point; } public void setPoint(Point point) { this.point = point; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public Date getDate() { return date; } public void setDate(Date date) { this.date = date; } public String execute() throws Exception { return SUCCESS; } }
5,建指定类型转换配置文件PointAction-conversion.properties,放在action目录下
point=com.test.convert.PointConvert
6,配置struts.xml文件
<action name="pointConvert" class="com.test.action.PointAction"> <result name="success">/output.jsp</result> <result name="input">/input.jsp</result> </action>
发表评论
-
Struts2(18):Struts2深入探索续2
2011-06-06 03:15 586Struts2与Servlet是低耦合的,这可使项目不依赖于具 ... -
Struts2(17):Struts2深入探索续
2011-06-06 00:26 11181,struts2有属性驱动方式与模型驱动两种方式:之前的例子 ... -
Struts2(16): Struts2深入探索
2011-06-05 12:56 930先来看看struts2包中的一些配置文件: 1,strut ... -
Struts2(15):Struts2的国际化续
2011-06-04 23:38 921Struts2中action错误的国际化 在action类的 ... -
Struts2(14):Struts2的国际化
2011-06-04 02:44 888先看看JAVA的国际化实现:JAVA国际化是使用java.ut ... -
Struts2(13):Struts2的上传下载续2
2011-06-04 00:07 926本节主要介绍上传任意数据的文件、指定文件类型上传与Struts ... -
Struts2(12):Struts2的上传下载续
2011-05-29 12:40 931使用Struts2结束common的fileupload和io ... -
Struts2(11):Struts2的上传下载
2011-05-29 01:00 860首先来看看在JSP中上传是如何做的: 从upload.jsp ... -
Struts2(10):Struts2的监听器与验权小例
2011-05-28 18:27 3052Struts2的监听器: 在xwork-2.0.7.jar包 ... -
Struts2(7):Struts2的输入校验框架(xml配置文件校验)
2011-05-22 22:00 2978上一节使用了Action类中的validate方法进行校验,此 ... -
Struts2(6):Struts2的输入校验2
2011-05-22 18:13 1082遇到类型转换错误的时候(也就是说不能进行类型转换),strut ... -
Struts2(5):Struts2的输入校验
2011-05-22 16:23 11321,Register.jsp,一个注册页面,包括用户名,密码, ... -
Struts2(4):Struts2类型转换2
2011-05-22 12:35 10751,修改上一节的input.jsp文件 <s:form ... -
Struts2(2):Struts2的输入检验
2011-05-21 12:44 9531:新建一个login2.jsp,使用Struts2的标签编写 ... -
Struts2(1):入门与配置
2011-05-21 11:51 5631,在MyEclipse中新建一个WEB工程:struts2d ... -
Struts2(9):开发自己的Struts2拦截器(编码与配置)
2011-05-15 21:16 1523要开发自己的Struts2拦截器类,需要实现Inte ... -
Struts2(8):拦截器的简单实现原理
2011-05-15 18:29 870什么是拦截器: 拦截器,在AOP(Aspect-Oriente ...
相关推荐
struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换
一个struts2的用户管理实例,涉及增删改查。 主要用到的技术: 1.struts2 2.国际化 3.类型转换 4.struts标签
关于struts2的类型转换的处理方法。
自己用struts2写的一个简单的局部数据类型转换实例,适合初学者
适合struts2入门使用,主要是struts拦截到的数据类型转换的问题
struts2转换 json
熟悉和掌握Struts2自定义类型转换。 熟悉和掌握Struts2内建校验的操作方法 实验环境与设备: 已经接入局域网的网络实验室,机器上装有IE浏览器等; strtus2.5.8 实验内容: (1) 编写一个...
使用struts2提供的转化器,实现Date类型的数据转换
struts2类型转换和国际化 根据自己所做实例 详细介绍
struts2.1数据类型转换2struts2.1数据类型转换2struts2.1数据类型转换2struts2.1数据类型转换2struts2.1数据类型转换2struts2.1数据类型转换2struts2.1数据类型转换2struts2.1数据类型转换2
这是一个关于struts2的类型转换 以及 拦截器 还有校验的例子
自己初学struts2做的类型转换方式,有局部类型转换,全局类型转换,和大量数据类型转换,供初学者学习,共同讨论
struts2 将要进行自定义类型转换的点数据从1个增加到3个 struts3 进行全局的类型转换 struts4 使用Struts2中内部类中的方法进行自定义类型转换,用到的类StrutsTypeConverter struts5 增加集合类型,使用范型 ...
Struts2处理类型转换错误,全局处理,如处理时间转换错误
struts2类型转换 http://d.download.csdn.net/down/504226/sunrain_gao
例如前台页面的Input框,我们输入一个坐标(x,y),通过Struts2配置,我们可以把前台输入的坐标自动给 Point Entity 的两个属性 int x 、int y 自动赋值!
对于基本数据类型 strus2可以自动的将其转换成所需要的类型,但是我们自己定义的引用数据类型无法转换,本文详细介绍了strus2的自定义类型转换器
struts2的类型转换详解struts2的类型转换详解
这是一个struts2的类型转换器的案例,主要是写的如果将一个20110202这种类型的日期格式进行转换!
Struts2自定义类型转换