在窗体的关闭事件里:
class this_InternalFrame_Adaptee extends nternalFrameAdapter{
myInternalFrame adaptee; //要关闭的窗体
this_InternalFrame_Adaptee(myInternalFrame adaptee){
this.adaptee = adaptee;
}
public void internalFrameClosing(InternalFrameEvent e) {
try {
if (rs != null) {
rs.close();
}
if (stat != null) {
stat.close();
}
if (conn != null) {
conn.close();
adaptee.dispose();
}
}
catch (SQLException ex) {
ex.printStackTrace();
}
} //异常在此抛出 java.sql.SQLException: [Microsoft][SQLServer
2000 Driver for JDBC]Object has been closed.
}我的SQL Server 2000已经打上SP4。
class this_InternalFrame_Adaptee extends nternalFrameAdapter{
myInternalFrame adaptee; //要关闭的窗体
this_InternalFrame_Adaptee(myInternalFrame adaptee){
this.adaptee = adaptee;
}
public void internalFrameClosing(InternalFrameEvent e) {
try {
if (rs != null) {
rs.close();
}
if (stat != null) {
stat.close();
}
if (conn != null) {
conn.close();
adaptee.dispose();
}
}
catch (SQLException ex) {
ex.printStackTrace();
}
} //异常在此抛出 java.sql.SQLException: [Microsoft][SQLServer
2000 Driver for JDBC]Object has been closed.
}我的SQL Server 2000已经打上SP4。
原因是一个stat你一定是多次使用了把
你两次关闭了CONNECTION了吧~~
rs = stat.executeQuery("select cj_plant.id,cj_plant.plant,db_framework.framework"+
" from cj_plant,db_framework where"+
" cj_plant.framework_id = db_framework.id");不带外健关系的就没事,这样:
rs = stat.executeQuery("select * from userb order by username asc");这是怎么回事呢
上面有错哦
我是在窗体上使用了JTable,让它显示数据库中的数据。如果选中一条记录,然后再关闭窗体就不会抛出异常,若对JTable不作任何选择就关闭窗体,就抛出了如题的异常,邪门了,另外一个相同的窗体却没事
public void internalFrameClosing(InternalFrameEvent e) {
try {
if (conn != null && !conn.isClosed())
if (rs != null) {
rs.close();
}
if (stat != null) {
stat.close();
}
if (conn != null) {
conn.close();
adaptee.dispose();
}
}
}
catch (SQLException ex) {
ex.printStackTrace();
}
}
我是自己打造了一个MyJTable,继承了JTable,用到Jtable的地方都是用的这个MyJTable,在另外一个窗体上用就没有任何的问题,我的代码都是一样的,为什么在这个窗体上就有异常呢,别让我跳楼。