1.session 到底如何进行脏处理?

当一个Dept对象加入到session缓存时,Session会为Dept对象的值属性复制一份快照,当Session刷新缓存时,会进行脏处理.

2.OID

用来持久化数据的唯一标示,在小配置里面的id标签中存在

3.主键生成策略

Uuid:32位的16进制数

4.PO    VO  DTO

PO=javabean

pojo =javabean +小配置

5.java 对象的三种对象

持久态:

Student  stu=new  Student();
              Session.save(stu);

Session有的,在DB 中也存在

游离态:

    stu.setld(1);

Session.close();

手里有OID,但是DB 却没有

DB中有的,Session中没有

顺势态:

    Student  stu =new Student ();

体现:在Session中以及DB 中都没有

6.Get()和load()的区别:

Load():没有使用对象的其他属性的时候,没有SQL延迟加载

GET():没有使用对象 的其他属性的时候,也声成了SQL立即加载

7.是什么导致了延迟加载:

是因为内存中构建了代理对象

8.快照:

session:线程非安全

session :线程安全

9.Session

可以简单的理解成一个connection

session 是持久化对象的容器

如果两个get()同一个oid ,那么第二次不在SQL ,说明了一级缓存的重要性,load()和get()都可以给缓存放入数据和取出数据

hibernate 第二次深入接触的更多相关文章

  1. 面试题:hibernate 第二天 快照 session oid 有用

    ## Hibernate第二天 ## ### 回顾与反馈 ### Hibernate第一天 1)一种思想 : ORM OM(数据库表与实体类之间的映射) RM 2)一个项目 : CRM 客户关系管理系 ...

  2. Hibernate第二天——实体类 与缓存机制

    第二天,我们先来了解一下框架里的一个重要概念:实体类 实体类:把数据表或其它持久化数据的格式映射成的类,就是实体类. 实体类的编写规则:由于对应的是javabean,因而也遵循javabean的一些规 ...

  3. Hibernate第二篇【API讲解、执行流程图】

    前言 从上一篇中已经大致介绍了Hibernate并且有了一个快速入门案例的基础了,-.本博文主要讲解Hibernate API 我们看看快速入门案例的代码用到了什么对象吧,然后一个一个讲解 publi ...

  4. hibernate第二天

    hibernate的核心思想就是将之前对单个字段的操作变为操作一个对象,使用了ORM(Object relation mapping)对象关系映射的思想 · 在hibernate中对数据库特殊字段的有 ...

  5. SSH框架之Hibernate第二篇

    1.1 持久化类的编写规则 1.1.1 什么是持久化类? 持久化类 : 与表建立了映射关系的实体类,就可以称之为持久化类. 持久化类 = Java类 + 映射文件. 1.1.2 持久化类的编写规则 ( ...

  6. ORM和Hibernate的配置方式

    分层体系结构: 逻辑上一般分为三层:表述层(提供与用户交互的界面).业务逻辑层(实现各种业务的逻辑).数据库层(负责存放和管理应用的持久性业务数据). 物理上一般分为两层:物理层(每一层都运行在网络上 ...

  7. hibernate简单应用

    Hibernate 第二章 核心API 和CURD实现 核心API介绍 单表操作方法 查询hql语句 1.认识hibernate 核心思想ORM:实现数据库中的文件一一映射为java中的实体类. 使用 ...

  8. Hibernate框架--对象的状态,缓存, 映射

    回顾Hibernate第二天: 1.  一对多与多对一 2. 多对多 3. inverse/cascade 4. 关联关系的维护 一对多: <set name="映射的集合属性&quo ...

  9. SSH框架之hibernate《二》

    Hibernate第二天     一.hibernate的持久化类和对象标识符         1.1持久化类的编写规范             1.1.1什么是持久化类:               ...

随机推荐

  1. tp5 sum某个字段相加得到总数

    方法 说明count 统计数量,参数是要统计的字段名(可选)max 获取最大值,参数是要统计的字段名(必须)min 获取最小值,参数是要统计的字段名(必须)avg 获取平均值,参数是要统计的字段名(必 ...

  2. 转 oracle数据库更新时间字段数据时的sql语句

    https://www.cnblogs.com/sun-rain/p/4921512.html ---Oracle数据库-时间函数 ---格式化时间插入update t_user u set u.mo ...

  3. 【模板】A*B Problem升级版(FFT快速傅里叶)

    题目描述 给出两个 $n$ 位10进制数x和y,求x*y(详见 洛谷P1919) 分析 假设已经学会了FFT/NTT. 高精度乘法只是多项式乘法的特殊情况,相当于$x=10$ 时. 例如n=3,求12 ...

  4. C# List<T> 集合使用

    1.初始化集合 , ); , ); , ); ) { graham, emerson, mario }; 2. 添加元素 racers.Add(, )); racers.Add(, )); racer ...

  5. vmware 安装centos7 阿里云镜像 虚拟机

    一.资源准备: 1.vmware软件下载: 百度自行下载安装 2.阿里云镜像地址:https://opsx.alibaba.com/mirror 1).镜像下载步骤: 点击计入centos: 这里直接 ...

  6. springboot2.0入门(七)-- 自定义配置文件+xml配置文件引入

    一.加载自定义配置文件: 1.新建一个family.yam文件,将上application.yml对象复制进入family family: family-name: dad: name: levi a ...

  7. 005_STM32程序移植之_RC522读卡模块

    1. 测试环境:STM32C8T6 2. 测试模块:RC522读卡模块 3. 测试接口: RC522读卡模块: VCC------------------3.3V GND--------------- ...

  8. 创建第一个springboot项目,maven project

  9. js中对象的输出顺序

    前言:最近用for-in时,看到说for-in不能保证遍历的对象顺序,对此有些疑问,于是便研究了下,本文做简要说明. 现象 let obj = { a: 'a', b: 'b', 1: 1, 2: 2 ...

  10. LibreOJ #113. 最大异或和

    二次联通门 : LibreOJ #113. 最大异或和 /* LibreOJ #113. 最大异或和 线性基 插入 与 查询最大值 说一下我在学习线性基时遇到的一些问题 1.线性基指的是一个数集 2. ...