您的位置:首页 > 编程语言 > Java开发

Struts2 对Date数据类型的转换器

2012-05-24 20:50 274 查看
转自: /article/4529599.html

struts1中 通常都是在DispatchActionSupport的继承类里,
public abstract class DispatchAction extends DispatchActionSupport
里静态执行

static {
ConvertUtils.register(new SqlDateConverter(null), java.sql.Date.class);
ConvertUtils.register(new SqlTimestampConverter(null),java.sql.Timestamp.class);
}


以下转载自 http://blog.csdn.net/junsmooth/archive/2008/07/17/2666145.aspx:

转换器的作用:
用于将用户在web页面输入的数据(字符串)转换为程序(在struts2中一般为自定义的Action类)所需要的数据类型.
默认转换器:
对于一些基本类型的数据(基本数据类型,集合类型,日期类型等)struts2提供了默认转换支持.
借助于struts2提供的默认转换器,页面提交的数据可以直接通过Action类中的setter方法转换为所需类型.
自定义转换器:
对于自定义类型数据,需要自己写转换器.
一般可继承 ognl 的DefaultTypeConverter类,或者StrutsTypeConverter. StrutsTypeConverter写起来相对更简单.
自定义转换器的配置:
//网上摘抄 csdn养猪场的文章=============

全局转换器的注册:在项目的classpath下新建一个xwork-conversion.properties文件,然后在文件中使用 转换的类型=转换器的形式进行注册,如:java.Util.Date=com.res.DateConverter,表示,凡是遇到java.Util.Date类型的属性都使用DateConverter来进行转换,该文件可以注册多个转换器,全部都是全局转换器,1行1个。
局部转换器的注册:如果注册局部转换器的话,需要新建一个actionName-conversion.properties,同时注意,要放到跟Action相同的目录下。然后文件内容也不一样了。这个文件里是指定Action中的某个属性使用某个转换器,格式是属性名=转换器名,如date=
com.res.DateConverter,可以由很多,也就是每一个属性都可以设置一个转换器
//========================
转换异常的处理:
对于转换失败信息,struts2会保存在fielderror集合里.转换失败的值会被赋值为默认的0 参与验证过程.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: