自定义BeanUtils处理时间格式转换

来源:互联网 发布:用友t3软件 编辑:程序博客网 时间:2024/05/09 17:59

BeanUtils.populate( Object bean , Map properties );可以使Map转对应的对象,但是如果是bean有个日期字段而Map中这个日期字段传过来是字符串,数据类型无法转换,会导致报错,所以BeanUtils需要一个日期转换器来解决日期格式转换问题。

  • 自定义BeanUtils的前提是要导入BeanUtils的相关jar包。
  • 导入BeanUtils.jar和logging.jar
  • 封装:BeanUtils.populate( Object bean , Map properties )

    注意:当对日期进行转换时

    1. 需要自己创建一个日期转换器:DateConverter对象,
    2. 设置格式:dateConverter.setPattern(“yyyy-MM-dd”),
    3. 进行注册:ConvertUtils.register( dateConverter , Date.class );

    /**
    *将数据封装给JavaBean,可以处理时间格式
    */
    public final class MyBeanUtils {

    private MyBeanUtils(){}public static void populate(Object bean, Map<String,String[]> properties){    try {        //处理时间格式        DateConverter dateConverter = new DateConverter();        //设置日期格式        dateConverter.setPatterns(new String[]{"yyyy-MM-dd","yyyy-MM-dd HH:mm:ss"});        //注册格式        ConvertUtils.register(dateConverter, Date.class);        //封装数据        BeanUtils.populate(bean, properties);    } catch (IllegalAccessException | InvocationTargetException e) {        throw new RuntimeException(e);    }}

    }

0 0
原创粉丝点击