这当然是个stupid的问题
可是ResultSet只是一个资源,有必要close吗?
当然如果说ResultSet对象,那么会占用服务器的资源,如果没有close()
不释放就意味这ResultSet对象一直驻守在内存,这个角度理解对吗
有人告述我ResultSet对象意味着游标的存在
游标也意味着资源,有点象指针,
java不说也对不用的变量要显式的置为null吗?
这个角度理解对吗?

解决方案 »

  1.   

    对于"ResultSet只是一个资源,有必要close吗?"的问题
    文档中说得很清楚了:
    A ResultSet object is automatically closed by the Statement object that generated it when that Statement object is closed, re-executed, or is used to retrieve the next result from a sequence of multiple results. A ResultSet object is also automatically closed when it is garbage collected
      

  2.   

    对于"ResultSet只是一个资源,有必要close吗?"的问题
    文档中说得很清楚了:
    A ResultSet object is automatically closed by the Statement object that generated it when that Statement object is closed, re-executed, or is used to retrieve the next result from a sequence of multiple results. A ResultSet object is also automatically closed when it is garbage collected
      

  3.   

    ResultSet不简单是一个对象,他不仅占用一段内存,它占用着很多其他的资源,他的close()就是来释放这些资源的,设为null只是释放了这一段内存
      

  4.   

    ResultSet中游标资源的消耗,不是指jvm中的,而是指所连接的数据库要维持庞大数量的游标,会造成数据库资源浪费和性能下降。
      

  5.   

    是statement产生游标还是ResultSet产生游标?
      

  6.   

    A ResultSet object is automatically closed when the Statement object that generated it is closed,
     re-executed, or used to retrieve the next result from a sequence of multiple results.
     这是jdk上的原话,说实话,这句话我连语法都不是很懂generated是修饰谁呢?
     当然,我们肯定会理解为the Statement object generate A ResultSet object
     那么这句化的意思就是
     当the Statement object close时,那么其对应的 A ResultSet object也自动close
     那么我的理解就是如果执行拉StateMentObject.close(),那么自动ResultSetObject.close()
     好像肯定不对,那又该如何理解呢
     期待大虾指正之
      

  7.   

    A ResultSet object is automatically closed when the Statement object that generated it is closed.
    --
    如果Statement对象close的话,那么由它产生的ResultSet对象将自动close.