struts2 类型转换

从前台页面输入传入后台的数据都是字符串类型的,但,有时候我们需要不只是字符类型,还有int,double等,所以这时候就得类型转换!!!

有struts2可以自己转换的,有些是不可以的,需要手动转换。

1、struts2内建类型转换器

boolean和Boolean:完成字符串和布尔值之间的转换

char和Character:完成字符串和字符之间的转换

int和Integer:完成字符串和整型值之间的转换

long和Long:完成字符串和长整型值之间的转换

float和Float、double和Double:完成字符串和实数的转换

Date

这些都不需要自己去转换,struts2自动完成

2、自定义类型转换器

当需要转换成对象时,就需要手动转换啦!

有两种方法

第一:继承DefaultTypeConverter,重写converValue(Map context, Object value, Class toType),需要自己判断

if(toType == 对象.class)就是从字符串转换成对象

if (toType == String.class) 就是从对象转换成字符串

第二:继承StrutsTypeConverter,不需要自己判断,重写convertFromString()方法,是转换对象,重写convertToString()方法,是转换string

且自定义时,还有局部类型转换和全局类型转换。

局部类型转换:在需要转换的包下创建xxx-conversion.properties文件(file)xxx为某个需要转换属性的action

在文件写:属性=用来转换的action

#point=com.test.converter.PointConverter


全局:xwork-conversion-properties 操作同上

#com.test.bean.Point=com.test.converter.PointConverter2


你可能感兴趣的:(struts2 类型转换)