![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Hibernate
github_36116217
这个作者很懒,什么都没留下…
展开
-
Hibernate的离线条件查询
为什么在多条件查询的时候,需要在Web层封装相应的参数到Criteria,而在Dao层才真正的去执行查询数据库的操作,所以需要在Web层创建Criteria并将其传递到Dao层,这个时候就不能在Web层使用session.createCriteria来创建Criteria怎么办使用离线条件查询1.使用反射创建Criteria对象 //从Web层获取数据封装到crite原创 2016-09-20 20:08:53 · 4400 阅读 · 1 评论 -
Hibernate的二级缓存
是什么Hibernate的一级缓存是session级别的缓存,这是远远不够的,因此Hibernate提供了二级缓存机制,它是SessionFactory级别的缓存,也就是说当session关闭的时候,下次再查询相关的数据是会从二级缓存读取的,而不是再次发送SQL请求怎么办默认的情况下,Hibernate不会启动二级缓存,需要手动配置1. 在Hibernate.xfg.xml原创 2016-09-21 10:30:19 · 212 阅读 · 0 评论 -
Hibernate的抓取策略
1.立即检索与延迟检索当需要查询出一个对象的时候,立即检索会立刻发送SQL语句,而延迟检索则会在该对象被使用的时候才会发送SQL语句a.单张表的查询中,在class标签上设置lazy属性即可 false:不使用延迟加载true :使用延迟加载b.一对多设置fetch(SQL语句的形式,写法)和lazy(是否延迟加载)对于一的一方:fetch:join原创 2016-09-20 16:20:09 · 231 阅读 · 0 评论 -
Hibernate的事物机制
事物的性质原子性:一个事物里的操作要么都执行,要么都不执行一致性:事物执行的前后,数据保持完整性隔离性:一个事物对数据的操作不受别的事物的影响持久性:一个事物对数据的操作在事物提交后,其对数据的修改时永久的隔离性带来的问题:读方面:读取脏数据: 事物A读取了事物B未提交的数据不可重复读: 事物A读取了事物B已经提交的数据(update),造成先后读取原创 2016-09-20 19:25:53 · 318 阅读 · 0 评论 -
Hibernate中同一个线程获取相同session
为什么在Hibernate中事物是与session相关的,一般情况下session会在Service层创建,Service中Session session = HibernateUtils.openSession()tx = session.beginTransaction();dao.save();dao.xxx();tx.commit();在Dao中就需原创 2016-09-20 19:53:54 · 1284 阅读 · 0 评论 -
Hibernate查询缓存
HiberNate的查询缓存1. 是什么 查询缓存是二级缓存的增强版,二级缓存不能缓存对象的属性,但是查询换粗是可以的2. 怎么办 查询缓存依赖二级缓存,在Hibernate.cfg.xml文件中必须要先配置好二级缓存,才能配置使用查询缓存 1. 在Hibernate.cfg.xml文件中开启查询缓存 <property nam原创 2016-09-21 11:37:32 · 945 阅读 · 0 评论