我这样做是为了将结果集读取到哈希表数组中:

ResultSetMetaData md = rs.getMetaData();
        int columns = md.getColumnCount();
        ArrayList list = new ArrayList(50);
        while (rs.next()){
            HashMap row = new HashMap(columns);
            for(int i=1; i<=columns; ++i){
                row.put(md.getColumnName(i),rs.getString(i));
            }
            list.add(row);
        }


但是当我执行类似“从联系人中选择SELECT ID AS contact_id”的查询时,我显然会得到id => ####而不是所需的contact_id。最好的方法是什么?这个主题很难找到。 :P谢谢!

最佳答案

得到它了。答案是搜索“获取列别名”:

http://docs.oracle.com/javase/6/docs/api/java/sql/ResultSetMetaData.html

变成:

ResultSetMetaData md = rs.getMetaData();
        int columns = md.getColumnCount();
        ArrayList list = new ArrayList(50);
        while (rs.next()){
            HashMap row = new HashMap(columns);
            for(int i=1; i<=columns; ++i){
                row.put(md.getColumnLabel(i),rs.getString(i));
            }
            list.add(row);
        }


效果很好。

10-07 19:09
查看更多