BeanUtils.copyProperties在一个java源文件有多个类的情况下失败的原因
最近在copybean时,无意中遇到一个问题,一个java源文件中存在几个类的情况下,BeanUtils.copyProperties不能成功,整理如下,供大家探讨。
情况1(copy失败)、(一个java源文件中存在3个类),如下:
BeanCopy.java
package com.hp9016.test.copyBean;import java.lang.reflect.InvocationTargetException;import org.apache.commons.beanutils.BeanUtils;public class BeanCopy { public static void main( String[] args ) { BeanFrom from = new BeanFrom(); from.setTestString( "testString" ); BeanTo to = new BeanTo(); try { BeanUtils.copyProperties( to, from ); } catch ( IllegalAccessException e ) { e.printStackTrace(); } catch ( InvocationTargetException e ) { e.printStackTrace(); } System.out.println( to.getTestString() ); }}class BeanFrom { private String _testString; public String getTestString() { return _testString; } public void setTestString( String testString ) { this._testString = testString; }}class BeanTo { private String _testString; public String getTestString() { return _testString; } public void setTestString( String testString ) { this._testString = testString; }}package com.hp9016.test.copyBean;import java.lang.reflect.InvocationTargetException;import org.apache.commons.beanutils.BeanUtils;public class BeanCopy { public static void main( String[] args ) { ...代码同上 }}package com.hp9016.test.copyBean;public class BeanFrom { ...代码同上}package com.hp9016.test.copyBean;public class BeanTo { ...代码同上}