• ConvertUtils.register的作用


    BeanUtils的populate方法或者getProperty,setProperty方法其实都会调用convert进行转换

    但Converter只支持一些基本的类型,甚至连Java.util.Date类型也不支持。而且它比较笨的一个地方是当遇到不认识的类型时,居然会抛出异常来。

    对于Date类型,我参考它的sqldate类型实现了一个Converter,而且添加了一个设置日期格式的函数。

    ConvertUtils.register(new DateConvert(), java.util.Date.class);

    特别是在web项目中,如果没有注册日期的话,formbean中将不支持java.util.Date类型,并抛出异常。就是注册一下就可以用了!

    例如:

    convertUtils.register(new DateConverter(), Date.class);
    convertUtils.register(new BooleanConverter(null), Boolean.class);
    convertUtils.register(new LongConverter(null), Long.class);
    convertUtils.register(new IntegerConverter(null), Integer.class);
    convertUtils.register(new DoubleConverter(null), Double.class);

    //进行beans拷贝,时间出现了空值而无法进行复制

    //要解决这个问题可以在以上代码执行前添加以下的代码

    BeanUtils.copyProperties(article, approval);  

    ConversionException: No value specified for Date的解决方法

    org.apache.commons.beanutils.ConversionException: No value specified for 'Date'

  • 相关阅读:
    用Java redis 实现发送手机验证码的功能
    redis之Java Jedis 的使用(使用maven引入)
    设计模式之代理模式
    Redis相关配置
    Redis五大数据类型
    设计模式之享元模式
    设计模式之外观模式
    设计模式之组合模式
    设计模式之装饰者模式
    设计模式之适配器模式
  • 原文地址:https://www.cnblogs.com/gsliuruigang/p/6550151.html
Copyright © 2020-2023  润新知