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'


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM