struts 有什么好办法处理ActionForm中Date对象我用的是struts 1.3好像在struts中需要录入数据,但是struts
struts 有什么好办法处理ActionForm中Date对象
我用的是struts 1.3
好像在struts中需要录入数据,但是struts不支持对Date对象的解析,大家有什么好办法去将string转换成Date吗?
[解决办法]
Validator里有现成的验证实例。验证通过了就可以把String转成Date了。
[解决办法]
用个javabean比较好做的。也更加方便点。
javabean里面用java.sql.Data
[解决办法]
SimpleDateFormat formatter = new SimpleDateFormat ("yyyy-MM-dd");
String s="1998-01-02";
Date date = formatter.parse(s);
[解决办法]
[解决办法]
一般看来 是弄一个Converter 专门处理java.util.Date
主要代码如下UtilDateConverter.java
- Java code
public class UtilDateConverter implements Converter { private static SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); public Object convert(Class type, Object value) { if (value == null) { return value; } if (value instanceof Date) { return value; } if (value instanceof String) { try { return format.parse((String)value); } catch (ParseException ignore) { } } return null; }}
[解决办法]
测试了下,如果是java.sql.Date,页面日期的格式必须为yyyy-mm-dd,Struts才可以转换。
[解决办法]
差一点点忘了,这个依赖于commons-beanutils包。我都是在form-〉vo这个时候用beanutils自动转换的,试了才知道原来struts也在用beanutils做转换,而且转换成功就赋值给ActionForm。
[解决办法]
[解决办法]
只要在数据库里 把 日期都定义为了 varchar(20) 了, 在页面做验证就可以了。。那样就不用那么麻烦了
