Java 生成列名行
如何生成由Java 生成列名行,java,jdbc,Java,Jdbc,如何生成由SQL表中的列名组成的表,并将其添加到JFRAME/JPANEL 我知道一旦我生成了它,如何添加它,但我实际上如何生成它呢 表名为properties,因此我希望从properties中选择*columnames,并生成一个JTable,然后将其添加到JPANEL 基本上是一行水平列名称,例如 物业ID卧室地址价格类型日期广告 我尝试了以下代码,但它只生成表数据,而不是列名 public static DefaultTableModel buildTableModel(ResultSe
SQL
表中的列名组成的表,并将其添加到JFRAME
/JPANEL
我知道一旦我生成了它,如何添加它,但我实际上如何生成它呢
表名为properties,因此我希望从properties
中选择*columnames,并生成一个JTable
,然后将其添加到JPANEL
基本上是一行水平列名称,例如
物业ID卧室地址价格类型日期广告
我尝试了以下代码,但它只生成表数据,而不是列名
public static DefaultTableModel buildTableModel(ResultSet rs)
throws SQLException {
ResultSetMetaData metaData = (ResultSetMetaData) rs.getMetaData();
// names of columns
Vector<String> columnNames = new Vector<String>();
int columnCount = metaData.getColumnCount();
for (int column = 1; column <= columnCount-1; column++) {
columnNames.add(metaData.getColumnName(column));
}
// data of the table
Vector<Vector<Object>> data = new Vector<Vector<Object>>();
while (rs.next()) {
Vector<Object> vector = new Vector<Object>();
for (int columnIndex = 1; columnIndex <= columnCount; columnIndex++) {
vector.add(rs.getObject(columnIndex));
}
data.add(vector);
}
return new DefaultTableModel(data, columnNames);
}
publicstaticdefaulttablemodel buildTableModel(ResultSet-rs)
抛出SQLException{
ResultSetMetaData=(ResultSetMetaData)rs.getMetaData();
//列名
向量列名称=新向量();
int columnCount=metaData.getColumnCount();
对于(int column=1;column),结果集元数据包含列名信息
// Get the metadata
ResultSetMetaData md = rs.getMetaData() ;
// Print the column labels
for( int i = 1; i <= md.getColumnCount(); i++ )
System.out.print( md.getColumnLabel(i) + " " ) ;
System.out.println() ;
//获取元数据
ResultSetMetaData md=rs.getMetaData();
//打印列标签
for(int i=1;i这似乎完成了单独设置它们的工作。可以使用数组和for循环进行清理
columnNames.getColumnModel().getColumn(0).setPreferredWidth(100);
columnNames.setValueAt("PropertyID", 0, 0);
columnNames.getColumnModel().getColumn(1).setPreferredWidth(50);
columnNames.setValueAt("Beds", 0, 1);
columnNames.getColumnModel().getColumn(2).setPreferredWidth(350);
columnNames.setValueAt("Address", 0, 2);
columnNames.getColumnModel().getColumn(3).setPreferredWidth(101);
columnNames.setValueAt("Price", 0, 3);
columnNames.getColumnModel().getColumn(4).setPreferredWidth(101);
columnNames.setValueAt("Type", 0, 4);
columnNames.getColumnModel().getColumn(5).setPreferredWidth(101);
columnNames.setValueAt("Parking", 0, 5);
columnNames.getColumnModel().getColumn(6).setPreferredWidth(101);
columnNames.setValueAt("Condition", 0, 6);
columnNames.getColumnModel().getColumn(7).setPreferredWidth(100);
columnNames.setValueAt("Agent", 0, 7);
columnNames.getColumnModel().getColumn(8).setPreferredWidth(100);
columnNames.setValueAt("Show", 0, 8);
columnNames.getColumnModel().getColumn(8).setPreferredWidth(101);
columnNames.setValueAt("Ad Date", 0, 9);