Java通过反射机制动态设置对象属性值的方法
更新时间:2016年07月24日 13:26:53 投稿:jingxian
下面小编就为大家带来一篇Java通过反射机制动态设置对象属性值的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
/**
* 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通过反射机制动态设置对象属性值的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
在MyBatis中实现一对多查询和多对一查询的方式详解(各两种方式)
今天通过两种方法分别给大家介绍在MyBatis中实现一对多查询和多对一查询的方式,每种方式通过实例代码给大家介绍的非常详细,需要的朋友参考下吧2022-01-01
Spring Boot + EasyExcel实现数据导入导出
这篇文章主要介绍了Spring Boot+EasyExcel实现数据导入导出,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的朋友可以参考一下2022-08-08


最新评论