java中使用beanUtils注册一个日期转换器

BeanUtils操纵bean的属相时,指支持8种基本数据类型。比如如果一个bean的属性是Date类型的,就需要注册一个日期转化器。代码如下:

------------------------------------------------------------------------------------------------------------------------------------

//为了让日志赋值到bean的birthday属性上,需要给beanUtils注册一个日期转换器
        ConvertUtils.register(new Converter() {
            public Object convert(Class type, Object value) {
                if(value==null){
                return null;
                }
                if(!(value instanceof String)){
                    throw new ConversionException("指支持String类型的转化");
                    }
                String str =(String)value;
                if(str.trim().equals("")){
                    return null;
                }
                SimpleDateFormat df =new SimpleDateFormat("yyyy-MM-dd");
                try{
                return df.parse(str);
                }catch (ParseException e){
                    throw new RuntimeException(e);
                }
            }
        }, Date.class);

---------------------------------------------------------------------------------------------------------------------

其实apache公司已经写好了很多转化器,以上的代码等同于:

ConvertUtils.register(new DateLocaleConverter(), Date.class);

posted @ 2016-12-14 10:24  贱贱的小帅哥  阅读(568)  评论(0)    收藏  举报