默认jsp传送的数据都是String类型的,所以比如Action方法中使用一个Date,不能直接转化,所以需要一个类型转换器
1.局部类型转换器
(1)创建一个类型传唤器
DateConver extends DefaultTypeConverter{ public Object convertValue(Map context, Object value, Class toType) { //struts2基于更全面的考虑,参数以数组的方式接受,防止用户提交的要转换的数据 //是多选。 Date da = null; String[] params = (String[])value; SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd"); try { da = sdf.parse(params[0]); } catch (ParseException e) { e.printStackTrace(); } return da; } }
(2)jsp界面 time
(3)Action类中time Date类型的
(4)添加action类中和转换器对应的文件
TestAction-conversion.properties
内容:times=com.jikexueyuan.conver.DateConver
意味着 times通过转换器转化了数据
2.全局类型转换器
xwork-conversion.properties
com.jikexueyuan.bean.Position=com.jikexueyuan.conver.PositionConver
类型匹配 放在src下就行了 直接匹配类 其中转换器中做处理