public List pares(ResultSet rs) throws Exception{
List list = new ArrayList();
//获取所有属性
PropertyDescriptor[] pds = PropertyUtils.getPropertyDescriptors(cla);
//获取表头
ResultSetMetaData rsm = rs.getMetaData();
while (rs.next()) {
//获取实例
Object obj = cla.newInstance();
for (PropertyDescriptor pd : pds) {
String name = pd.getName();
Boolean find = false;
for (int i = 0; i < rsm.getColumnCount(); i++) {
if(name.toLowerCase().equals(rsm.getColumnName(i + 1).toLowerCase())){
find = true;
break;
}
}
if(find){
String val = rs.getString(name);
if(val != null && !"".equals(val)){
BeanUtils.setProperty(obj, name, val);
}
}
}
list.add(obj);
}
return list;
}
通过结果集合resultSet,同时需要借助第三方jar包commons-beanutils-1.7.0.jar,当然你也可通过Field[] filed = class.getDeclaredFields()获取属性但是这样或获取比较的多没有用的数据,比如像类的annotation等属性!
转载于:https://my.oschina.net/huangsm/blog/29256