Java通过反射机制动态设置对象属性值的方法
/**
*MethodName:getReflection<br>
*Description:解析respXML在通过反射设置对象属性值
*User:liqijing
*Date:2015-7-19下午12:42:55
*@paramclzzName
*@paramrespXML
*@return
*@throwsClassNotFoundException
*@throwsDocumentException
*@throwsIllegalArgumentException
*@throwsIllegalAccessException
*@throwsInstantiationException
*@throwsSecurityException
*@throwsNoSuchFieldException
*/
publicstatic<T>ObjectgetReflection(StringclzzName,StringrespXML)throwsClassNotFoundException,DocumentException,IllegalArgumentException,IllegalAccessException,InstantiationException,SecurityException,NoSuchFieldException{
Objecto=Class.forName(clzzName).newInstance();
Classclz=Class.forName(clzzName).newInstance().getClass();
Documentdoc=null;
doc=DocumentHelper.parseText(respXML);
Elementel=doc.getRootElement();
for(Fieldf:clz.getDeclaredFields()){
Iteratorit=el.elementIterator();
while(it.hasNext()){
Elementelt=(Element)it.next();
if(f.getName().equals(elt.getName())){
f=clz.getDeclaredField(elt.getName());
f.setAccessible(true);
f.set(o,elt.getText());
}
}
}
returno;
}
DearAll:
在开发过程中有类似的需求通过反射动态设置属性值,希望有帮助。也很高兴与大家分享,谢谢。
以上这篇Java通过反射机制动态设置对象属性值的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。