Spring 中的BeanUtils与apache中的BeanUtils差别

来源:互联网 发布:生产线看板软件 编辑:程序博客网 时间:2024/06/05 03:50
Spring 中的BeanUtils与apache中的BeanUtils区别

org.apache.commons.beanutils.BeanUtils#copyProperties方法会进行类型转换,默认情况下会将Ineger、Boolean、Long等基本类型包装类为null时的值复制后转换成0或者false,有时这个可能会引起不必要的麻烦。

而org.springframework.beans.BeanUtils.copyProperties(bookDto, book);则不会!


 关于import org.apache.commons.beanutils.BeanUtils的一些该注意的地方:

BeanUtils支持的转换类型如下:    * java.lang.BigDecimal    * java.lang.BigInteger    * boolean and java.lang.Boolean    * byte and java.lang.Byte    * char and java.lang.Character    * java.lang.Class    * double and java.lang.Double    * float and java.lang.Float    * int and java.lang.Integer    * long and java.lang.Long    * short and java.lang.Short    * java.lang.String    * java.sql.Date    * java.sql.Time    * java.sql.Timestamp 这里要注意一点,java.util.Date是不被支持的,而它的子类java.sql.Date是被支持的。因此如果对象包含时间类型的属性,且希望被转换的时候,一定要使用java.sql.Date类型。否则在转换时会提示argument mistype异常。


阅读全文
0 0
原创粉丝点击