我正在使用netbeans 7.4。我创建了一个JFrame,它从mysql数据库中搜索数据并在JTable中显示结果。我需要让用户能够对结果行进行选择(这里我使用的数据库有一个名为&#34的表; Vehicle_R"其中包含有关车辆的数据。因此用户应该能够选择一个车辆)。 这是我的编码
public class CreateConnection {
Connection con;
Statement statmnt;
public CreateConnection() {
try{
this.con =DriverManager.getConnection("jdbc:mysql://localhost:3306/vehiclereserve","root","nadun");
statmnt=con.createStatement();
}
catch(SQLException e)
{System.out.println(e.toString());}
}
public Connection getCon()
{
return con;
}
public Statement getStatement()
{
return statmnt;
}
在我得到的主要
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
try{
CreateConnection con=new CreateConnection();
ResultSet res=con.getStatement().executeQuery("select * from Vehicle_R");
jTable1.setModel(DbUtils.resultSetToTableModel(res)); //rs2xml.jar library added
//TableColumn tc=new TableColumn();
//jTable1.addColumn(tc);
}
catch (SQLException e)
{
JOptionPane.showMessageDialog(null, e.toString(), "ERROR", JOptionPane.ERROR_MESSAGE);
}
应添加一个新列,并带有复选框以进行选择。请在java中考虑我是新手。
答案 0 :(得分:1)
DbUtils.resultSetToTableModel(res));
这取决于DbUtils的作用以及TableModel的用途。也许TableModel支持" addColumn(...)"方法是否可以添加自己的复选框列。
如果TableModel不支持该功能,那么您需要使用不同的TableModel。您还可以使用DefaultTableModel。它支持addColumn()方法,因此您可以将数据从数据库加载到DefaultTableModel中,然后为您的复选框添加单独的列。
从Table From Database查看Table From Database Example
。这是将ResultSet中的数据加载到DefaoltTableModel的简单示例。您只需进行一些更改即可添加您自己的checkboxex列。基本上你要做的就是在" columnNames"中添加另一个列标题。矢量为您的复选框。然后,当您处理ResultSet中的每一行时,您需要将一个Boolean.false值添加到"行"矢量。