一.缓存的概念: 以空间换时间:   二.Hibernate缓存的分类: 前面我们讲的缓存都是session缓存:也叫一级缓存:get,load等缓存都是内置的,一级缓存: SessionFactory缓存,二级缓存: 这里以Class —— Student,1对多的关系(单向)来例子说明下: Class.java: package com.cy.model; public class Class { private int id; private String name; public int…
序言 这算是hibernate的最后一篇文章了,下一系列会讲解Struts2的东西,然后说完Struts2,在到Spring,然后在写一个SSH如何整合的案例.之后就会在去讲SSM,在之后我自己的个人博客应该也差不多可以做出来了.基本上先这样定下来,开始完成hibernate的东西把.这章结束后,我会将我一些hibernate的资料奉上,供大家一起学习. ---WH 一.概述 这章总的分两大块来讲解, 第一大块,hibernate的事务管理.,对于hibernate的事务管理来说,如果之前学过数…
在Hibernate3 JPA里配置了一下非分布式环境的二级缓存,效果不错.具体过程如下: 1, 需要引入的jar包 http://ehcache.org/downloads/catalog 下载的包里已经包含了简单的例子和javadoc ehcache-core-2.4.6.jar (必需) ehcache-terracotta-2.4.6.jar (必需) slf4j-api-1.6.1.jar slf4j-jdk14-1.6.1.jar 2, 在JPA的persistence.xml中加入…
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------…
我们知道hibernate的一级缓存是将数据缓存到了session中从而降低与数据库的交互.那么二级缓存呢? 一.应用场合 比方.在12306购票时.须要选择出发地与目的地,假设每点一次都与数据库交互一次,这就非常不合适,这些地点数据在相当长的一段时间内是不会发生变化的(山东省在相当长的时间内还叫山东省),所以应该缓存起来,不是必需每次都与数据库交互,并且该类数据安全性也不是非常高. 适合二级缓存的数据: 在现代软件开发中.确实存在一类数据没有什么私有性,为公开的数据,数据基本上不发生变化,该数…
 1 PersonTestMapper.xml中的内容如下: <?xmlversion="1.0"encoding="UTF-8"?> <!DOCTYPEmapper PUBLIC"-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!-- namespace:命名空间,用来唯一…
http://zy19982004.iteye.com/blog/1721846 ———————————————————————————————————————————————————————— Hibernate学习一:Hibernate注解CascadeType 博客分类: Hibernate hibernate  一.概念 现有一场景:一个管理员可以管理多个网吧,一个网吧可以被多个管理员管理.从中抽象出一个多对多的例子user-bar. 主控方user:多对多里面里面会有第三张表user_…
一级缓存: 一级缓存是SqlSession级别的缓存.在操作数据库时需要构造 sqlSession对象,在对象中有一个(内存区域)数据结构(HashMap)用于存储缓存数据.不同的sqlSession之间的缓存数据区域(HashMap)是互相不影响的. 一级缓存的作用域是同一个SqlSession,在同一个sqlSession中两次执行相同的sql语句,第一次执行完毕会将数据库中查询的数据写到缓存(内存),第二次会从缓存中获取数据将不再从数据库查询,从而提高查询效率.当一个sqlSession结…
第一节:配置数据库连接池 这里配置c3p0连接池,需要的jar包: jar包位于hibernate压缩包的:hibernate-release-4.3.5.Final\lib\optional\c3p0 文档中介绍了两种配置方式: 1)在hibernate.properties中配置: 2)在hibernate.cfg.xml中配置: <hibernate-configuration> <session-factory> <!--数据库连接设置 --> <prop…
一级缓存 查询两次id为1的user User user1 = entityManager.find(User.class, 1); User user2 = entityManager.find(User.class, 1); 结果发现仅仅调用了一次sql查询,由于使用了一级缓存 假设查询一次后,关掉entityManager,再查询 User user1 = entityManager.find(User.class, 1); entityManager.close(); entityMan…