public static List<Object> XmlToEntity(String xmlstr,Object obj) throws Exception{
Date date = new Date();
SimpleDateFormat ymd = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat ymdhms = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Document doc = DocumentHelper.parseText(xmlstr);
Element rootElt = doc.getRootElement(); // 获取根节点
Element memberElm=rootElt.element("body");
String code = GetXmlCode(rootElt.elementIterator("head"),"code");
//查询失败
List<Object> resultlist = new ArrayList<>();
if(Constants.ERROR_CODE.equals(code)){
}else {
Iterator iteratorson = memberElm.elementIterator();
while (iteratorson.hasNext()) {
Element stu = (Element) iteratorson.next();
Iterator iterator1 = stu.elementIterator();
Class clazz = obj.getClass();
Object object = clazz.newInstance();
while (iterator1.hasNext()){
Element stuChild = (Element) iterator1.next();
String methodname = stuChild.getName().substring(0, 1).toUpperCase() + stuChild.getName().substring(1);
Field[] fields = clazz.getDeclaredFields();
for(Field field : fields) {
if(field.getName().equals(stuChild.getName())) {
field.setAccessible(true);
Type type = field.getGenericType();
String typestr = type.toString();
String value = stuChild.getStringValue();
if (type.toString().equals(//判断数据类型
"class java.lang.String")) { // 如果type是类类型,则前面包含"class ",后面跟类名
field.set(object,value);
}else if(type.toString().equals("int")){
field.set(object,Integer.parseInt(value));
}else if(type.toString().equals(
"class java.util.Date")){
if(value.indexOf(":")!=-1){
field.set(object,ymd.parse(value));
}else{
field.set(object,ymdhms.parse(value));
}
}
}
}
}
resultlist.add(object);
}
for (int i = 0; i < resultlist.size(); i++) {
System.out.println(resultlist.get(i).toString());
}
}
return resultlist;
}