Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将行添加到DefaultTableModel_Java_Swing_Jtable_Defaulttablemodel - Fatal编程技术网

Java 将行添加到DefaultTableModel

Java 将行添加到DefaultTableModel,java,swing,jtable,defaulttablemodel,Java,Swing,Jtable,Defaulttablemodel,这给了我一个错误: 线程“AWT-EventQueue-0”java.lang.ArrayIndexOutOfBoundsException中出现异常:1>0 有什么想法吗?DefaultTableModel#insertRow在给定索引处插入一个条目。无法插入超出模型当前行数的条目 替换 examTable.insertRow(row, new Object[] { name,headname,datum, exam,pres }); int row = examTable.getRowCo

这给了我一个错误:

线程“AWT-EventQueue-0”java.lang.ArrayIndexOutOfBoundsException中出现异常:1>0

有什么想法吗?

DefaultTableModel#insertRow
在给定索引处插入一个条目。无法插入超出模型当前行数的条目

替换

examTable.insertRow(row, new Object[] { name,headname,datum, exam,pres });
int row = examTable.getRowCount()+1;

请看以下几行:

if (result.first()) {
   while(result.next()) {
您的
SQL
表明您希望从查询中返回一条记录。但是,通过调用
ResultSet#first
,光标将被高级移到第一行,因此永远不会输入
while
循环。相反,您可以将这些行替换为:

if (result.next()) {

除此之外,使用
PreparedStatement
而不是
语句来防止攻击。

DefaultTableModel#insertRow
在给定索引处插入条目。无法插入超出模型当前行数的条目

替换

examTable.insertRow(row, new Object[] { name,headname,datum, exam,pres });
int row = examTable.getRowCount()+1;

请看以下几行:

if (result.first()) {
   while(result.next()) {
您的
SQL
表明您希望从查询中返回一条记录。但是,通过调用
ResultSet#first
,光标将前进到第一个可能的行之后,这样就不会进入
while
循环。相反,您可以将这些行替换为:

if (result.next()) {

除此之外,使用
PreparedStatement
而不是
语句来防止攻击。

替换

examTable.insertRow(row, new Object[] { name,headname,datum, exam,pres });
int row = examTable.getRowCount()+1;

Java中的所有内容都是基于0的索引

examTable.insertRow(row, new Object[] { name,headname,datum, exam,pres });
int row = examTable.getRowCount()+1;


在Java中,所有内容都是基于0的索引,这是一个旧线程,但没有响应。我就是为了这个注册的。
每次更新(添加、插入、删除)表模型时:

examTable.addRow(new Object[] { name,headname,datum, exam,pres });
您需要使用更新的模型刷新表:

jTable2.setModel(examTable);

根据我的经验,这不是自动发生的。

旧线程,但未得到响应。我就是为了这个注册的。
每次更新(添加、插入、删除)表模型时:

examTable.addRow(new Object[] { name,headname,datum, exam,pres });
您需要使用更新的模型刷新表:

jTable2.setModel(examTable);

根据我的经验,这不会自动发生。

在此处编写代码,不要链接。在此处编写代码,不要链接。不知何故,它不会给我任何结果。未添加任何行。此外,我的表格在运行应用程序时不会自动显示。请参阅更新。现在显示的表的问题可能是布局问题,但我无法对此发表评论,因为您没有包括添加它的代码。布局是固定的,但我仍然没有看到任何条目(是的,查询实际上提供了条目)。我正确地遵循了您的说明。我建议在
addRow
之前放置一个断点,以确保您正在输入
if
语句范围,并检查传递给调用本身的值。如果resutl.next()返回false,我会在else语句中放置一个system out println。出于某种原因,它找不到任何结果,但如果我在工作台中输入查询,它会给我多个条目(id为1)。不知何故,它不会给我任何结果。未添加任何行。此外,我的表格在运行应用程序时不会自动显示。请参阅更新。现在显示的表的问题可能是布局问题,但我无法对此发表评论,因为您没有包括添加它的代码。布局是固定的,但我仍然没有看到任何条目(是的,查询实际上提供了条目)。我正确地遵循了您的说明。我建议在
addRow
之前放置一个断点,以确保您正在输入
if
语句范围,并检查传递给调用本身的值。如果resutl.next()返回false,我会在else语句中放置一个system out println。出于某种原因,它找不到任何结果,但是如果我在我的工作台中输入查询,它会给我多个条目(id为1)。