![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Hibernate
夏天的欧文
这个作者很懒,什么都没留下…
展开
-
Hibernate简介
一丶Hibernate hibernate是轻量级javaEE应用的持久层解决方法。二丶为什么使用hibernate目前主流的数据库依然是关系型数据库,而java语言则是面向对象的编程语言,当把两者结合在一起使用时比较麻烦。在没使用hibernate之前:使用Hibernate之后这样有什么好处呢?采用hibernate框架后,应用程序不再需要访问底层数据库,而是...原创 2018-09-24 11:38:03 · 229 阅读 · 0 评论 -
Hibernate一些与一级缓存相关的操作
一.什么是缓存? 缓存是介于物理数据源与应用程序之间,是对数据库中的数据复制一份临时放在内存中的容器,其作用是为了减少应用程序对物理数据源访问的次数,提高效率,从而提高了应用程序的运行性能。Hibernate在进行读取数据的时候,根据缓存机制在相应的缓存中查询,如果在缓存中找到了需要的数据(我们把这称做“缓存命 中"),则就直接把命中的数据作为结果加以利用,避免了大量发送SQL语句到数据库查询...原创 2018-10-12 19:20:46 · 179 阅读 · 0 评论 -
Hibernate二级缓存中的四种缓存区域
二级缓存有四种缓存区域 :1.类缓存区域比如:session.get(Customer.class,1); //这就是类缓存区域2.集合缓存区域customer.getOrders(); //就是存放Orders集合的内容的缓存区域就叫集合缓存区域 3.更新时间戳区域 4.查询缓存区域 这几个在后面会详细讲到,现在不讲,想直接看的就跳...原创 2018-10-12 21:49:18 · 1754 阅读 · 0 评论 -
Hibernate之加载策略(延迟加载与即时加载)和抓取策略(fetch)
假设现在有Book和Category两张表,表的关系为双向的一对多,表结构如下:假设现在我想查询id为2的那本书的书名,使用session.get(...)方法: Session session=HibernateUtil.getSession(); Book book =(Book) session.get(Book.class,2); System.out.println(b...转载 2018-10-06 12:03:40 · 141 阅读 · 0 评论 -
什么是N+1查询(hibernate)?
在Session的缓存中存放的是相互关联的对象图。默认情况下,当Hibernate从数据库中加载Customer对象时,会同时加载所有关联的Order对象。以Customer和Order类为例,假定ORDERS表的CUSTOMER_ID外键允许为null,图1列出了CUSTOMERS表和ORDERS表中的记录。 以下Session的find()方法用于到数据库中检索所有的Custome...原创 2018-10-06 18:47:25 · 3721 阅读 · 1 评论 -
Hibernate检索策略(类级别,关联级别,批量检索)详解
一、概述检索策略分三大块,类级别检索策略和关联级别检测策略。 类级别检索策略:get、load、 关联级别检索策略:order.getCustomer().getName() 上面这两种应该是看得懂的。很容易去理解,现在就具体来说说这两种其中的细节。 批量检索解决n+1问题。二、类级别检索策略1.立即检索get ...转载 2018-10-06 23:43:14 · 298 阅读 · 0 评论 -
Hibernate方言
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_33429968/article/details/53536778 前言在部署某个项目代码时,使用maven clean package wildfly:...转载 2018-09-29 19:26:53 · 632 阅读 · 0 评论 -
Hibernate简介
Hibernate框架—简介ORM对象/关系数据库映射ORM全称Object/Relation Mapping,对象/关系数据库映射,可以理解成一种规范。该框架的基本特征:完成面向对象的编程语言到关系数据库之间的映射。ORM关系型数据库包装成面向对象的模型。ORM框架由 实体+XML配置文件(如下图所示) 基本映射方式:有三种①数据库表映射类:持久化类被映射到...转载 2018-09-24 17:13:56 · 308 阅读 · 0 评论 -
Hibernate主键生成策略
Hibernate常用的主键生成策略的原理、特点、应用场合 关于映射文件的问题下次再介绍,这次主要总结hibernate常用主键生成策略。 (1)increment a)对主键值采取自动顺序增长的方式生成新的主键,值默认从1开始。 b)原理:在当前应用实例中维持一个变量,以保存当前最大值,之后每次需要生成主键值的时候将此值加1作为主键.不依赖于底...转载 2018-10-01 14:54:29 · 113 阅读 · 0 评论 -
浅谈hibernate的sessionFactory和session
转载自:http://blog.csdn.net/jiangxindu1/article/details/48037731一、hibernate是什么?Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernat...转载 2018-09-25 21:44:53 · 115 阅读 · 0 评论 -
Hibernate缓存机制之快照
Hibernate缓存机制之快照(1)、快照是数据的副本 (2)、快照属于一级缓存 (3)、快照是在堆内存中的 (4)、快照的作用:保证数据一致性 当执行`session.getTransaction().commit()时,Hibernate同时会清理session的一级缓存(flush),也就是将堆内存中的数据与快照中的数据进行...转载 2018-10-02 15:26:22 · 96 阅读 · 0 评论 -
hibernate的持久化类和对象标识符
一丶什么是持久化类:Hibernate是持久层的ORM映射框架,专注于数据的持久化工作。所谓的持久化,就是将内存中的数据永久存储到关系型数据库中。那么知道了什么是持久化,什么又是持久化类呢?持久化类 = 实体类 + 映射文件。其实所谓的持久化类指的是一个Java类与数据库表建立了映射关系,那么这个类称为是持久化类。其实你可以简单的理解为持久化类就是一个Java类有了一个映射文件与数据...转载 2018-09-29 21:29:51 · 242 阅读 · 0 评论