Java 如何编辑JTable行?
我想要一个教程或方法,这样我可以突出显示Jtable中的一行,该行从mysql数据库获取数据,然后单击edit按钮,这样它就会启动一个表单,我可以使用该表单编辑该行,然后保存。 我使用了一个有效的方法,但它抛出了很多异常,所以我认为这是一个糟糕的设计 编辑:我还不想使用绑定。我想写我能理解的基本代码 编辑2:下面是我用来获取编辑查询时使用的键的调用。。我高亮显示该行并调用此函数:Java 如何编辑JTable行?,java,jdbc,jtable,sqlexception,Java,Jdbc,Jtable,Sqlexception,我想要一个教程或方法,这样我可以突出显示Jtable中的一行,该行从mysql数据库获取数据,然后单击edit按钮,这样它就会启动一个表单,我可以使用该表单编辑该行,然后保存。 我使用了一个有效的方法,但它抛出了很多异常,所以我认为这是一个糟糕的设计 编辑:我还不想使用绑定。我想写我能理解的基本代码 编辑2:下面是我用来获取编辑查询时使用的键的调用。。我高亮显示该行并调用此函数: int id = ((Number) model.getValueAt(jTable1.getSelectedRow
int id = ((Number) model.getValueAt(jTable1.getSelectedRow(), 0)).intValue() ;
函数体不是我写的,它是resultsetablemodel
文件的一部分
public Object getValueAt( int row, int column )
throws IllegalStateException
{
// ensure database connection is available
if ( !dbConnection.isConnectedToDatabase() )
throw new IllegalStateException( "Not Connected to Database" );
// obtain a value at specified ResultSet row and column
try
{
getResultSet().absolute( row + 1 );
return getResultSet().getObject( column + 1 );
} // end try
catch ( SQLException sqlException )
{
System.out.println("Exception from here dude");
sqlException.printStackTrace();
} // end catch
return ""; // if problems, return empty string object
} // end method getValueAt
这里抛出了一个resultset closed异常,我知道原因是因为我以前使用了相同的resultset来填充表。所以我想要一个不同的选择。请参阅。但是如果你能展示你的代码,那会很有帮助
如果您的问题是应用程序抛出了一个
SQLException
,那么您需要显示该表的SQL查询和数据库模式
这里抛出了一个resultset closed异常,我知道原因是因为我以前使用了相同的resultset来填充表。所以我想要一个不同的选择
看。“数据库中的表示例”展示了如何从ResultSet中的数据创建DefaultTableModel,这样您就不必担心这个问题。@Ahmed:但您必须更详细地描述您的问题所在。否则我们无法帮助您。请尝试移动ResultSet指针。执行之前:
getResultSet().absolute(行+1)代码>。Do:getResultSet.next()代码>。