详解Hibernate中的二级缓存

http://m.blog.csdn.net/ZHOUCHAOQIANG/article/details/47748179 关于get 方法:Hibernate3.x回去查二级缓存的,然后再去查数据库,没有则返回null,这跟load(或find)一样,当然load找不到则返回异常。 Hibe...

2017-07-14 10:32:36

阅读数:339

评论数:0

深入hibernate的三种状态

http://www.cnblogs.com/xiaoluo501395377/p/3380270.html 学过hibernate的人都可能都知道hibernate有三种状态,transient(瞬时状态),persistent(持久化状态)以及detached(离线状态)...

2017-06-01 14:57:20

阅读数:282

评论数:0

数据库(Hibernate)事务与并发问题处理(乐观锁与悲观锁)

目录 一、数据库事务的定义 二、数据库事务并发可能带来的问题 三、数据库事务隔离级别 四、使用Hibernate设置数据库隔离级别 五、使用悲观锁解决事务并发问题 六、使用乐观锁解决事务并发问题     Hibernate事务与并发问题处理(乐观锁与...

2016-08-16 14:20:37

阅读数:1023

评论数:0

Hibernate与 MyBatis的比较

最近做了一个Hibernate与MyBatis的对比总结,希望大家指出不对之处。 第一章     Hibernate与MyBatis Hibernate 是当前最流行的O/R mapping框架,它出身于sf.net,现在已经成为Jboss的一部分。 Mybatis 是另外一种优秀的O...

2016-03-04 12:40:12

阅读数:508

评论数:0

hibernate与mybatis异同与比较(涵盖网上各个版本,清晰明了)

一、序言        最近一直用mybatis做开发,以前用过hibernate,能感受到一些它们在使用上的区别,不过总想抽出时间来好好比较比较弄弄清楚它们各自的优劣,以便更好进行选择和深入的了解。        网上也看了很多资料,结合自己的使用体会,粗率地概括和总结了一下,以供大...

2016-03-04 12:30:57

阅读数:1139

评论数:0

Hibernate 监听用户操作日志

我们前段时间有个.net项目需要用j2ee改造,有个需求是要对所有的数据库操作(CRUD)都要做历史记录,要记录操作内容,操作的用户和操作时间。这样的需求称为审计日志 Audit log。 项目采用Spring构建,持久层技术采用的是 JPA规范 + Hibernate实现的方案 要实现审...

2015-02-03 20:10:46

阅读数:2449

评论数:0

hibernate3新特性EventListener完整实例

参考文章:http://www.iteye.com/topic/477134     项目中要对数据的更新做审计,比如订单的每一项的变化,会员主要信息的变化等。     老版的程序是这样处理的,在更新前先查一次数据库,然后依次比对各列,得到修改变化的信息。但在我们新版程序中...

2015-02-03 20:10:11

阅读数:1590

评论数:0

hibernate 拦截器和事件框架

注册监听器: MyPreInsertListener.java: [java] view plaincopy package eventListener;      import org.hibernate.event.PreIns...

2015-02-03 19:58:53

阅读数:815

评论数:0

利用Hibernate 3 Interceptor生成审计日志

在实际应用中,有可能需要审计对数据库中重要数据的更新历史。如:每当发生向T_USER表中插入或更新记录的事件时,就向审计日志表插入一条记录。  对于此种业务场景,可以采用数据库的触发器来生成审计日志,这种方法较为简便,并且有很好的性能,但是不支持跨数据库平台,缺乏灵活性。因此我们可以采用Hi...

2015-02-03 19:48:03

阅读数:2073

评论数:0

Hibernate事件系统及监听器

1.Hibernate事件系统(Event System)及监听器 •如果需要响应持久层的某些特殊事件,你也可以使用Hibernate的事件框架。 该事件系统可以用来替代拦截器,也可以作为拦截器的补充来使用。 •基本上,Session接口的每个方法都有相对应的事件。比如...

2015-02-03 19:47:07

阅读数:1148

评论数:1

Hibernate拦截器(Interceptor)与事件监听器(Listener)

前言: 由于项目中(S2SH框架)用到了memcache缓存服务器,考虑到同步问题是用每个bean变更时同时更新缓存还是用类似数据库trigger(触发器)去实现呢,答案当然是用类似trigger的方式了,其优点不言而喻,毕竟这么写一劳永逸。 经调查发现,hibernate有两种方式可...

2015-02-03 19:42:41

阅读数:8853

评论数:0

Hibernate拦截器(Interceptor)与事件监听器(Listener)

Hibernate拦截器(Interceptor)与事件监听器(Listener)   拦截器(Intercept):与Struts2的拦截器机制基本一样,都是一个操作穿过一层层拦截器,每穿过一个拦截器就会触发相应拦截器的事件做预处理或善后处理。   监听器(Listener):其实功...

2015-02-03 15:44:39

阅读数:930

评论数:0

Hibernate数据拦截与事件监听

拦截器(Interceptor) org.hibernate.Interceptor接口定义了Hibernate中通用拦截机制 创建Session对象的时候,所有的Session对象或者这个Session对象的所有持久化操作的动作都会被指定的拦截器进行拦截. Interceptor接...

2015-02-03 15:28:48

阅读数:746

评论数:0

Hibernate SQL查询 addScalar()或addEntity()

Hibernate除了支持HQL查询外,还支持原生SQL查询。           对原生SQL查询执行的控制是通过SQLQuery接口进行的,通过执行Session.createSQLQuery()获取这个接口。该接口是Query接口的子接口。           执行SQL查询步骤如下: ...

2015-02-02 14:13:45

阅读数:622

评论数:0

Hibernate Session的Flush模式

首先要知道的是: Hibernate会尽量将与数据库的操作延迟,直到必须要与数据库进行交互,例如save方法一般会在提交时才真正执行,最终在提交时会以批处理的方式与数据库进行交互,以提高效率。 而将操作延迟,就是利用缓存,将最后要处理的操作放到缓存中。 flush方法的主要作用就...

2015-01-23 15:11:58

阅读数:1177

评论数:0

hibernate一级缓存

一级缓存的生命周期和session的生命周期一致,当前sessioin一旦关闭,一级缓存就消失,session间不能共享一级缓存的数据,因此一级缓存也叫session级的缓存或事务级缓存。一级缓存只存实体对象的 ,它不会缓存一般的对象属性(查询缓存可以),即当获得对象后,就将该对象的缓存起来,如果...

2015-01-23 14:44:14

阅读数:529

评论数:0

hibernate缓存:一级缓存和二级缓存

1.什么是缓存?  缓存是介于物理数据源与应用程序之间,是对数据库中的数据复制一份临时放在内存中的容器,其作用是为了减少应用程序对物理数据源访问的次数,从而提高了应用程序的运行性能。Hibernate在进行读取数据的时候,根据缓存机制在相应的缓存中查询,如果在缓存中找到了需要的数据(我们把这...

2015-01-23 13:43:45

阅读数:553

评论数:0

hibernate缓存机制详细分析

在本篇随笔里将会分析一下hibernate的缓存机制,包括一级缓存(session级别)、二级缓存(sessionFactory级别)以及查询缓存,当然还要讨论下我们的N+1的问题。 随笔虽长,但我相信看完的朋友绝对能对hibernate的 N+1问题以及缓存有更深的了解。 一、N+1...

2015-01-23 10:56:10

阅读数:500

评论数:0

hibernate反向生成数据库表

hibernate反向生成数据库表 第一步:添加Hibernate jar包,hibernate.cfg.xml写好数据源. hibernate.cfg.xml: "-//Hibernate/Hibernate Configuration DTD 3.0//EN" ...

2015-01-07 12:03:06

阅读数:2853

评论数:0

关于hibernateTemplate和jdbcTemplate的是否共享事务的说明

1、hibernateTemplate 与 jdbcTemplate 事务为共享。 2、但hibernate中的HQL方法,比如save update等 ,若不调用flush(),则数据只存在于缓冲区,未提交到数据库中,此时事务并未提交, 故共享事务中的 jdbctemplate无法查询到该数...

2015-01-04 19:57:10

阅读数:1748

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭