随笔分类 -  Hibenate3.x

摘要:很多人对二级缓存都不太了解,或者是有错误的认识,我一直想写一篇文章介绍一下hibernate的二级缓存的,今天终于忍不住了。 我的经验主要来自hibernate2.1版本,基本原理和3.0、3.1是一样的,请原谅我的顽固不化。 hibernate的session提供了一级缓存,每个session,对同一个id进行两次load,不会发送两条sql给数据库,但是session关闭的时候,一级缓存就失效了。 二级缓存是SessionFactory级别的全局缓存,它底下可以使用不同的缓存类库,比如ehcache、oscache等,需要设置hibernate.cache.provider_class.. 阅读全文
posted @ 2011-09-28 14:54 Mr-sniper 阅读(318) 评论(0) 推荐(0)
摘要:ibernate中经常用到当多个人对同一数据同时进行修改的时候,会发生脏数据,造成数据的不一致性,解决办法是可以通过悲观锁和乐观锁来实现。悲观锁:在数据有加载的时候就给其进行加锁,直到该锁被释放掉,其他用户才可以进行修改,优点:数据的一致性保持得很好,缺点:不适合多个用户并发访问。当一个锁住的资源不被释放掉的时候,这个资源永远不会被其他用户进行修改,容易造成无限期的等待。乐观锁:就是在对数据进行修改的时候,对数据才去版本或者时间戳等方式来比较,数据是否一致性来实现加锁。优点比较好。1、在悲观锁中,只要在加载的时候,才去session中的load方法,进行枷锁,session.load(**** 阅读全文
posted @ 2011-09-28 14:24 Mr-sniper 阅读(214) 评论(0) 推荐(0)
摘要:多对多关系操作对象FORUM自定义论坛表FORUM_TOPIC论坛帖子表FORUM_TOPIC_RELATION论坛主题关系表其中一个自定义的论坛对应多个论坛帖子一个帖子也可以存在于多个主题的论坛中这里以相对比较方便的jpa注解方式 anotationHibernate中对多多关系所产生的尸体主要有两种方式,一种是产生两个实体,一种是产生三个实体将关系表也产生实体产生两个实体配置方式和查询:package com.tkbs.domain.forum;import java.util.Date;import java.util.HashSet;import java.util.Set;impor 阅读全文
posted @ 2011-07-27 20:39 Mr-sniper 阅读(284) 评论(0) 推荐(0)