快速业务通道

一个JDBC表控件模型 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-16
l;              if (columnClasses[i] == String.class)          cellValue = results.getString (columnNames[i]);              else if (columnClasses[i] == Integer.class)          cellValue = new Integer (                  results.getInt (columnNames[i]));              else if (columnClasses[i] == Float.class)          cellValue = new Float (                  results.getInt (columnNames[i]));              else if (columnClasses[i] == Double.class)          cellValue = new Double (                  results.getDouble (columnNames[i]));              else if (columnClasses[i] == java.sql.Date.class)          cellValue = results.getDate (columnNames[i]);              else          System.out.println ("Can''t assign " +                  columnNames[i]);              cellList.add (cellValue);          }// for          Object[] cells = cellList.toArray();          rowList.add (cells);      } // while      // finally create contents two-dim array      contents = new Object[rowList.size()] [];      for (int i=0; i<contents.length; i++)          contents[i] = (Object []) rowList.get (i);      System.out.println ("Created model with " +               contents.length + " rows");      // close stuff      results.close();      statement.close();      }      // AbstractTableModel methods      public int getRowCount() {          return contents.length;      }      public int getColumnCount() {          if (contents.length == 0)              return 0;          else              return contents[0].length;          }          public Object getValueAt (int row, int column) {              return contents [row][column];          }          // overrides methods for which AbstractTableModel          // has trivial implementations          public Class getColumnClass (int col) {              return columnClasses [col];          }          public String getColumnName (int col) {              return columnNames [col];          }      }

一个JDBC表控件模型(3)

时间:2011-07-18

构造函数将实际的工作交给了getTableContents()方法,它负责刚才所提到的两次查询。通过连接得到DatabaseMetaData类的对象,之后调用getColumns()函数得到字段信息。这个方法的参数是catalog,schemaPattern,tableNamePattern,columnNamePattern;这里忽略了catalog,schemaPattern,然而如果你用的是一个复杂的数据库,可能你就需要详细的描述这两项。getColumns()返回一个结果集ResultSet,就像通常JDBC查询得到的结果集一样,对它进行迭代就可以了。

要得到字段名是很容易的:只需要调用getString("COLUMN_NAME")方法就可以了。但要得到数据类型就

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号