## Hibernate第二天 ## ### 回顾与反馈 ### Hibernate第一天 1)一种思想 : ORM OM(数据库表与实体类之间的映射) RM 2)一个项目 : CRM 客户关系管理系统 客户公司表 3)一个框架 : Hibernate 简化JDBC 面向对象的数据库操作 注意问题 : Hibernate简化了操作 但是牺牲了SQL的执行性能 线程问题 数据库连接放到线程 程序世界 程序运行期间 进程(一个软件运行期间驻留在内存中的一个程序) 与 进程接收到执行任务的时候 它就会…
一.概述      Session接口是Hibernate向应用程序提供的操纵数据库最主要的接口,它提供了基本的保存.更新.删除和加载Java对象的方法.      Session具有一个缓存,位于缓存中的对象称为持久化对象,它和数据库相关记录对应.      Session能够在某些时间点按照缓存中对象的变化来执行相关SQL语句,来同步更新数据库,这一过程称为清理缓存(flush).   二.Session的缓存 1.理解     如果希望一个Java对象A一直处于生命周期中,就必须保证至少有…
1.1 持久化类的编写规则 1.1.1 什么是持久化类? 持久化类 : 与表建立了映射关系的实体类,就可以称之为持久化类. 持久化类 = Java类 + 映射文件. 1.1.2 持久化类的编写规则 (1): 提供无参数的构造方法 (2): 类中的成员都是私有的private (3): 对私有属性提供get/set方法 (4): 属性尽量使用包装类类型 : 默认值不同的,包装类默认值null,基本数据类型默认0. (5): 持久化类不要使用final进行修饰 : 使用final修饰,延迟加载失效,…
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------…
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();   …
主要讨论Spring与Hibernate集成中的session问题 1.通过getSession()方法获得session进行操作 public class Test extends HibernateDaoSupport{ public void save(User user){ this.getSession().save(user); } } 利用这种方式获得的session在方法执行结束之后不会自动关闭连接,也就是说我们必须通过session.close()或者releaseSessio…
更改hibernate.cfg.xml的内容,常用配置有: <!--  把hibernate运行时的SQL语句显示到控制台  --> <property name="show_sql">true</property> <!--  输出到控制台的SQL语句是否排版  --> <property name="format_sql">true</property> <!--  生成具体的表结构,…
文中面试题从茫茫网海中精心筛选,如有错误,欢迎指正! 第一篇链接:[Java面试题系列]:Java基础知识常见面试题汇总 第一篇 1.JDK,JRE,JVM三者之间的联系和区别 你是否考虑过我们写的xxx.java文件被谁编译,又被谁执行,又为什么能够跨平台运行? 1.1基本概念 JVM:Java Virtual Machine,Java虚拟机. JVM并不能识别我们平时写的xxx.java文件,只能识别xxx.class文件,它能够将class文件中的字节码指令进行识别并调用操作系统上的API…
hibernate的核心思想就是将之前对单个字段的操作变为操作一个对象,使用了ORM(Object relation mapping)对象关系映射的思想 · 在hibernate中对数据库特殊字段的有着具体配置,不同的数据库有不同的主键生成策略 映射到数据的实体对象也需要有以下几点需要注意 私有化成员变量 提供get/set方法 提供无参构造(底层需要反射 反射支持是无参构造) 类型尽量使用包装类 private int  Integer  因为包装类有null值 需要有oid( object…
第二天,我们先来了解一下框架里的一个重要概念:实体类 实体类:把数据表或其它持久化数据的格式映射成的类,就是实体类. 实体类的编写规则:由于对应的是javabean,因而也遵循javabean的一些规范 定义私有的成员变量 通过set/get方法对成员变量进行读写操作 实体类独有的特性:有属性值作为唯一值(一般为id) 建议不要使用基本数据类型而是使用它们的包装类,理由是例如要区分0分与没有参加考试,int类型难以区分, 而包装类Integer可以使用0与Null进行区分 讲到实体类,我们再对第…