ResultSet 动态获取列名

 

方法1

ResultSet rs = stmt.executeQuery("SELECT * FROM TABLE");

ResultSetMetaData rsmd = rs.getMetaData();

int count=rsmd.getColumnCount();

String[] name=new String[count];

for(int i=0;i<count;i++)

name[i]=rsmd.getColumnName(i+1);

方法2

DefaultTableModel dtm1 = new DefaultTableModel();
JTable tb1 = new JTable(dtm1);
JScrollPane sp1 = new JScrollPane(tb1);

    ResultSet rs = executeQuery( sqlCode ); //获得结果集
    int row = recCount( rs );     //获得结果集中有几行数据
    ResultSetMetaData rsm =rs.getMetaData(); //获得列集
   int col = rsm.getColumnCount();   //获得列的个数

    String colName[] = new String[col];
    //取结果集中的表头名称, 放在colName数组中
    for (int i = 0; i < col; i++) {   -->第一列,从1开始.所以获取列名,或列值,都是从1开始
     colName[i] = rsm.getColumnName( i + 1 ); -->获得列值的方式一:通过其序号
    }//End for
    rs.beforeFirst();
   String data[][] = new String[row][col];

    //取结果集中的数据, 放在data数组中
    for (int i = 0; i < row; i++) {
     rs.next();
     for (int j = 0; j < col; j++) {
      data[i][j] = rs.getString (j + 1);
      //System.out.println (data[i][j]);
       }
    }//End for
    fdtm.setDataVector (data, colName);
  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值