java将集合转为bean,关于把JavaBean转换成List的方法

private List getListByModel(Serializable serializable){

List list = new ArrayList();

Class extends Serializable> clazz = serializable.getClass();

Class> superClz = clazz.getSuperclass();

if(superClz instanceof Serializable){

Method md[] = superClz.getDeclaredMethods();

for (int m = 0; m < md.length; m++) {

if (md[m].getName().indexOf("get")==0) {

try {

Object obj = md[m].invoke(serializable, new Object[0]);

list.add(String.valueOf(obj));

} catch (IllegalArgumentException e) {

e.printStackTrace();

} catch (IllegalAccessException e) {

e.printStackTrace();

} catch (InvocationTargetException e) {

e.printStackTrace();

}

}

}

}

Method method[] = clazz.getDeclaredMethods();

for (int i = 0; i < method.length; i++) {

if (method[i].getName().indexOf("get")==0) {

try {

Object object = method[i].invoke(serializable, new Object[0]);

if(object instanceof Serializable){

Class> clz = object.getClass();

Method md[] = clz.getDeclaredMethods();

for (int j = 0; j < md.length; j++) {

if (md[j].getName().indexOf("get")==0) {

try {

Object obj = md[j].invoke(object, new Object[0]);

list.add(String.valueOf(obj));

} catch (IllegalArgumentException e) {

e.printStackTrace();

} catch (IllegalAccessException e) {

e.printStackTrace();

} catch (InvocationTargetException e) {

e.printStackTrace();

}

}

}

} else {

list.add(String.valueOf(object));

}

} catch (IllegalArgumentException e) {

e.printStackTrace();

} catch (IllegalAccessException e) {

e.printStackTrace();

} catch (InvocationTargetException e) {

e.printStackTrace();

}

}

}

return list;

}