您的位置:首页 > 编程语言 > Java开发

Java通过反射机制动态设置对象属性值的方法

2016-07-24 13:26 1136 查看
/**
* MethodName: getReflection<br>
* Description:解析respXML 在通过反射设置对象属性值
* User: liqijing
* Date:2015-7-19下午12:42:55
* @param clzzName
* @param respXML
* @return
* @throws ClassNotFoundException
* @throws DocumentException
* @throws IllegalArgumentException
* @throws IllegalAccessException
* @throws InstantiationException
* @throws SecurityException
* @throws NoSuchFieldException
*/
public static <T> Object getReflection(String clzzName , String respXML) throws ClassNotFoundException, DocumentException, IllegalArgumentException, IllegalAccessException, InstantiationException, SecurityException, NoSuchFieldException{
Object o = Class.forName(clzzName).newInstance();
Class clz = Class.forName(clzzName).newInstance().getClass();
Document doc = null ;
doc = DocumentHelper.parseText(respXML);
Element el = doc.getRootElement();
for (Field f : clz.getDeclaredFields()){
Iterator it=el.elementIterator();
while(it.hasNext()){
Element elt = (Element) it.next();
if(f.getName().equals(elt.getName())){
f = clz.getDeclaredField(elt.getName());
f.setAccessible(true);
f.set(o, elt.getText());
}
}
}
return o;
}

Dear All:

在开发过程中有类似的需求通过反射动态设置属性值,希望有帮助。也很高兴与大家分享,谢谢。

以上这篇Java通过反射机制动态设置对象属性值的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息