67,513
社区成员
发帖
与我相关
我的任务
分享
public class Home {
private String service_name;
private String type_name;
private String author_name;
private String content_desc;
private String img_url;
private String wap_url;
private Date create_time;
//省略get、set
}
public List<E> getList(ResultSet rs,Class e){
List<E> list = new ArrayList<E>();
try {
while(rs.next()){
E obj =(E) e.newInstance();
Field[] field = obj.getClass().getDeclaredFields();
//将属性按照字母顺序排序
int length = field.length;
//1、将对象属性包装成map
Map<String, Field> map = new HashMap<String, Field>();
for(int i = 0;i<length;i++){
map.put(field[i].getName(), field[i]);
}
//2、对属性值进行排序
String [] a = new String[length];
for(int i = 0;i<length;i++){
a[i]=field[i].getName();
}
Arrays.sort(a);
//3、对对象数组进行排序
for(int i = 0;i<length;i++){
field[i] = map.get(a[i]);
}
//将列名按照字母顺序排序
int columnCount =rs.getMetaData().getColumnCount();
String[] rsName = new String[columnCount];
for(int i = 0;i<columnCount;i++){
rsName[i] = rs.getMetaData().getColumnName(i+1);
}
Arrays.sort(rsName);
for(int i = 0;i<field.length;i++){
field[i].setAccessible(true);
field[i].set(obj, rs.getObject(rsName[i]));
}
list.add(obj);
}
} catch (SecurityException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IllegalArgumentException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IllegalAccessException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (InstantiationException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
return list;
}
于是json = JSONObject.fromObject(readlist.get(i))异常了,有什么办法让json能够直接处理java.sql.date的数据吗?求解答