面试 hibernate中的session和JDBC中collection的关系

来源:互联网 发布:模拟人生4编程秘籍 编辑:程序博客网 时间:2024/05/04 08:57

1.HttpSesion对象 与 Hibernate中的session 的区别?

楼主可以这样理解:
首先这两个session除了名字一样没有任何联系的。(这是很重要的)
然后分别说下:HttpSession是severlet中的会话机制,也是jsp的内置对象,可以简单看做是个存储对象的一个作用域。
Hibernate Session是把JDBC的Connection和Transaction接口进行了简单的封装后的一个接口,即此Session主要用来管理对象的增、删、改、查和事务的,还有只要持久化类的实例对象与Session关联了,那此对象就不只是简单的在内存中了,而是可以通过Session对象去管理它了,所以也称此对象在Session缓存中即Hibernate所提到的一级缓存。


2.JDBC和Hibernate的区别

Hibernate的底层还是jdbc,只不过额外封装了很多东西而已。。例如事务,SessionFacotory等等..给你举个例子,你需要买一瓶酱油。你直接跑到酱油工厂里去拿了一瓶,因为你需要酱油,所以你去拿。而Hibernate的作用就是超市,你需要酱油的时候直接去超市里买,而不是直接去工厂..超市的将有卖完了,它自己就去工厂里进货,至于如何进货,你完全不用关心,只需要配置好各种配置文件就ok。 我知道你又会有疑问了。。当超市的货物不能满足你的时候,就比如说你需要一架飞机,当时超市没有卖。这个时候Hibernate也提供了hql和sql,让你直接去工厂里提货。。 超市里还有包换,这个就是事务了。。你需要买一瓶酱油一瓶醋,你总不能买瓶酱油回家 然后再来超市买醋吧。。事实上你是买了酱油然后再买瓶醋然后一起回家。;这个就类似与Hibernate的transaction了。。 亲,你学到了没。。哥打了这么久的字。。


3.hibernate中的session和JDBC中collection的关系

其中session只是相当于Connection,然Query则相当于PerparedStatement。供参考


0 0
原创粉丝点击