[英]Java - ResultSet change Db column names to show in JTable
我正在使用rs2xml .jar将数据填充到表中。 这是我显示表列和数据的代码
ResultSet rs = stmt.executeQuery("select * from employees");
table_employees.setModel(DBUtiles.resultSetToTableModel(rs));
这段代码可以成功运行,但是我想重命名列。 我不想在表中显示数据库列。
您需要更新TableColumn
从TableColumnModel
:
TableColumnModel tcm = table.getColumnModel();
tcm.getColumn(0).setHeaderValue("whatever you want");
或者,您可以在创建JTable时重写getColumnName(...)
方法:
JTable table = new JTable( DBUtilities.resultSetToTableModel(rs)
{
private String[] columnNames =
{
"Column 1",
"Column 2",
"Column ..."
};
@Override
public String getColumnName(int col)
{
return columnNames[col];
}
};
如果希望将DB值与java列名一起使用,可以考虑使用以下代码,并且可以使用jTable的TableModel属性在java中设置列名。
DefaultTableModel tmodel = (DefaultTableModel) jTable1.getModel();
tmodel.addRow(new Object[] {....});
jTable1.setModel(tmodel);
希望这可以帮助。
您可以根据需要从Sql查询中获取列名,例如
SELECT column name as 'Student Id', Column Name as 'Student name' FROM student;
查询将根据您的决定为您提供带有列名的结果。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.