struts2的Converter

来源:互联网 发布:淘宝卖家怎么注销店铺 编辑:程序博客网 时间:2024/06/06 00:34

struts2的Converter所起的作用是在页面数据和Java所支持的数据之间进行转换,在页面中,我们最常用的就是string类型。但是在Java类中,

像int,Date,Map,List等类型,直接将页面所传来的string类型值赋给这些变量,就会引异常,因此在赋值前必须进行类型转换。struts2的Converter就是这个作用。struts为我们准备了基本的Converter,如基本类型(int,double等),还有日期类型,各种集合类型。

不过struts2也给用户留下了自定义转换器的接口,通过继承OGNL.DefaultTypeConverter类,我们可以定义一个转换类。

 

下面仿照一个在页面中画点的项目说明。假设用户可以在jsp页面中输入一个点的坐标,如(10,10),在后台我们就有一个Point类的实例Point(10,10)

与之对应。要想做到这点,我们就需要利用类型转换了,首先定义一个Point类,然后再定义一个PointConverter类用来进行类型转换。在整一PointAction做响用。Point类的源码如下:

 

PointConverter的源码:

 

PointAction的源码:

 

在tutorial目录下建立PointAction-conversion.properties文件:

作用是告诉struts2框架在给Point用setter方法赋值时,用tutorial.PointConverter进行转换。其中key是action中需要转换的属性,value要包括包名。

struts.xml片段:

 

在point下建立point.jsp文件,如下:

发布,运行即可。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

原创粉丝点击