在java web表单中提交的数据难免会有日期类型,struts2支持的日期类型是yyyy-MM-dd,如果是其他格式,就需要自己进行转换。比如yy-MM-dd要完成自己定义的转换需要完成。主要的类是:StrutsTypeConverter,该类是抽象类,需要实现两个方法1)pu ...
在java web表单中提交的数据难免会有日期类型,struts2支持的日期类型是yyyy-MM-dd,如果是其他格式,就需要自己进行转换。比如yy-MM-dd
要完成自己定义的转换需要完成。
主要的类是:StrutsTypeConverter,该类是抽象类,需要实现两个方法
1)public Object convertFromString(Map context, String[] values, Class toClass)
2)public String convertToString(Map context, Object o)
其中第二个转换成字符串的不常用。
步骤:
1 定义转换器类
2 进行配置,局部或全局
1、定义转换器类
定义一个 DateConverter 类继承自 StrutsTypeConverter,实现两个虚方法
@Override public Object convertFromString(Map context, String[] values, Class toClass) { SimpleDateFormat[] sdfs = { new SimpleDateFormat("yyyyMMdd"), new SimpleDateFormat("yyyy/MM/dd"), new SimpleDateFormat("yyyy,MM,dd")}; //转换类型不是日期类型 if(toClass != Date.class){ return null; } //转换值是空或者长度为0 if(values == null || values.length==0){ return null; } String strDate = values[0]; Date birthday = null; for(int i=0;i<sdfs.length; i++){ try { birthday = sdfs[i].parse(strDate); return birthday; } catch (ParseException e) { continue; } } return birthday; } @Override public String convertToString(Map context, Object o) { // TODO Auto-generated method stub return null; }
原标题:struts2自定义日期类型转换器
关键词:Struts
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。