Hibernate相对于JDBC的好处有哪些,JDBC的陷阱有哪些啊?

解决方案 »

  1.   

    hib开发快,底层调的还是jdbc。jdbc有问题hib也逃不掉。
      

  2.   

    hibernate是对JDBC的很好的轻量级的封装,使程序员可以把重点放在业务的实现上去,很好的管理了JDBC
    而且hibernate充分体现了面向对象的设计理念(ORM对象关系映射),把数据表结构映射成实体的BEAN或者通过BEAN映射成数据库表,总之要自己用,自己体会啦!
      

  3.   

    陷阱?hibernate底层实现还是jdbc,不过是作为一种框架,方便而已
      

  4.   

    而且也不只是只有hibernate 我觉得Ibatis也不错啊
      

  5.   

    谢谢各位!百度是这样说JDBC的陷进的:
    1、conn一定要在finally语句块进行关闭。
    2、Statement、ResultSet尽可能缩小其变量作用域。
    3、Statement可以使用多次,定义多个。一个Statement对象只和一个ResultSet对象关联,并且是最后一次查询。
    4、ResultSet在Connection、ResultSet关闭后自动关闭问题是我觉得第4点不太理解,还有为什么Statement、ResultSet尽可能缩小其变量作用域呢?
      

  6.   

    好像 JDBC 2.0 和 JDBC 3.0 似乎在关联多少个 Statement 和 ResultSet 方面略有差异,我没有看到 JSR,不知道细节,建议去 JSR。像我们保持一个 ResultSet 不关闭,在数据库也需要相应的资源的支持,比如一个隐含的像游标一样的东西保持活动状态,你可以做一个实验,用一个 Statement 在 for 循环中 executeQuery 十万次,但总是不关闭得到的 ResultSet,你肯定会得到 Oracle 给你的礼物:ORA-xxxxx 游标已耗尽,Statement 或 ResultSet 没及时关闭在 Sybase SQL Server 上报告的错误是"连接已达到上限" 而不是游标。