繁体   English   中英

如何有效地获取“ AS”列名称,例如ResultSetMetaData?

[英]How to effectively get “AS” column name like ResultSetMetaData?

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

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);
        }

效果很好。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM