部分代码为:
out.close();
}catch(SQLException e){
e.printStackTrace();
}finally{
if(stmt!=null){
try {
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
stmt=null;
}
if(pstmt!=null){
try {
pstmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
pstmt = null;
}
if(conn!=null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
conn = null;
}
}
不明白stmt=null.pstmt=null conn=null.是什么意思谢谢

解决方案 »

  1.   

    这个应该是JDBC中数据库连接使用后的资源释放吧,其实stmt=null.pstmt=null conn=null这三步没有必要去做,;stmt.close();pstmt.close();conn.close()这个三个就行了
      

  2.   

    大体上是这个意思:
    主动置null ,可以通知java垃圾回收机制,告诉他们这些对象可以回收了. 加速资源释放.
      

  3.   

    顶楼上。垃圾回收机制就是当jvm侦测到当前对象没有引用其他对象时,被回收
      

  4.   

    主动置null ,可以通知java垃圾回收机制,告诉他们这些对象可以回收了. 加速资源释放.
    像其他开发语言的话 ,好多都需要 最后不在使用了 ,为变量引用 置null ,防止野指针 ;
      

  5.   

    正常来说关闭就可以了,即使设成null,精灵线程也未必会立即收回资源
      

  6.   


    为什么我没有看到纯java中在关闭数据库的时候后面也加上这句设为Null的例子啊