马士兵struts2视频教程第八十、八十一、八十二集

struts转换:把字符串转成特定类型,把特定类型转成字符串

后台向前台页面传递值,jsp显示的时候会转换类型

简单类型转换,直接在action中定义,然后get/set即可

复杂类型转换:自定义类型转换器

首先定义一个class,继承DefaultTypeConverter类(实现了TypeConverter接口),然后重写里面的convertValue方法,两个参数Object value(需要转换的值),Class toType(需要转换的类型),返回转换结果(如果处理不了,return super.convertValue(value, toType)交给父类处理)

然后注册到struts2里面,才可以使用。有三种注册方式:

1、注册给action:action名字-conversion.properties  必须和action放在一个包内

里面定义action里面定义的名字 = 对应转换器的类 (遇到某个名字不能转换,交给对应的类转换)

2、全局转换器:xwork-conversion.properties

里面内容同上

3、注解

如果是List<自定义类>这种类型,则在转换器的properties就不能写变量名,需要写类名 = 对应的转换器

还有一种写法就是继承StrutsTypeConverter,convertFromString和convertToString,之前的DefaultTypeConverter是在一个方法里做两种转换,StrutsTypeConverter做了扩展,

是从DefaultTypeConverter做的继承并做了扩展,convertFromString是从字符串转化成目标类型,convertToString是把目标类型转化成字符串

如果遇到很复杂的,用request.setAttribute或session传值


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值