Hibernate之三态篇】的更多相关文章

一.概况 (一)瞬时状态(暂时态) 在对象中假设对象刚被创建但没有被持久化的话就是瞬时态 特点: (1) 不和 Session 实例关联 (2)在数据库中没有和瞬时对象关联的记录 (二)持久状态 持久化对象就是已经被保存进数据库的实体对象,而且这个实体对象如今还处于Hibernate的Session缓存管理之中.这时对该实体对象的不论什么改动.都会在清理缓存时同步到数据库中. 特点: (1)持久的实例在数据库中有相应的记录,并拥有一个持久化标识(identifier). (2)和session相…
这篇博文是hibernate系列的最后一篇,既然是最后一篇,我们就应该进行一下从头到尾,整体上的总结,将这个系列的内容融会贯通. 概念 Hibernate是一个对象关系映射框架,当然从分层的角度看,我们也说它是数据持久层的框架. 我们从上一句话可以看出Hibernate的核心:面向对象.关系映射以及数据持久化.前面两个概念很容易理解,而对于"数据持久化",就是将数据或者某物体,永久的保存起来.现实生活中的例子有很多,例如:鲜肉冷藏,水果做成罐头,而对于编程而言就是将数据保存在文件或磁盘…
前言 在Hibernate的第二篇中只是简单地说了Hibernate的几种查询方式-.到目前为止,我们都是使用一些简单的主键查询阿-使用HQL查询所有的数据-.本博文主要讲解Hibernate的查询操作- get/load主键查询 由于主键查询这个方法用得比较多,于是Hibernate专门为我们封装了起来- get()立即查询 load()懒加载 对象导航查询 如果对象与对象之前存在一对多.多对一的关系的时候 在以前SQL查询的时候:我们如果想要得到当前对象与另一对象的关联关系的时候,就必须用多…
前言 前面已经讲解了一对多和多对一的映射是怎么配置了,也讲解了inverse和cascade属性对关联关系的影响,本博文讲解多对多的映射和一对一的映射! 多对多映射 需求:一个项目由多个员工开发,一个员工开发多个项目 设计数据库表 一般地,如果是多对多的映射,我们都会使用一张中间表来保存它们的关联关系-. 设计实体 我们在设计实体的时候,一般是核心数据表对应一个JavaBean实体[中间表并不是核心数据表],那么我们将会设计两个JavaBean对象 project.java package zh…
这篇博文是Hibernate系列的最后一篇,既然是最后一篇,我们就应该进行一下从头到尾,整体上的总结,将这个系列的内容融会贯通. 概念 Hibernate是一个对象关系映射框架,当然从分层的角度看,我们也说它是数据持久层的框架. 我们从上一句话可以看出Hibernate的核心:面向对象.关系映射以及数据持久化.前面两个概念很容易理解,而对于“数据持久化”,就是将数据或者某物体,永久的保存起来.现实生活中的例子有很多,例如:鲜肉冷藏,水果做成罐头,而对于编程而言就是将数据保存在文件或磁盘以及数据库…
SSH环境搭建之Hibernate环境搭建篇 搭建有两种方式: 1.使用IntelliJ IDEA或者MyEclipse的逆向工程(关系模型 -> 对象模型),我使用的是IntelliJ IDEA: 1)在工程上右键选择 "Add Framework Support", 在弹窗中勾选"Hibernate",并勾选相应的选项. 2)点击OK,选择 View -> Tool Windows -> Persistence 3)右键xiaonei,选择 G…
相对于上一篇中的代码编写HibernateUtil类以提高程序的执行速度 首先,仍然要写一个javabean(User.java): package cn.itcast.hibernate.domain; import java.util.Date; public class User { private int id; private String name; private Date birthday; public int getId() { return id; } public voi…
前言 上一篇博文已经讲解了一对多和多对一之间的关系了,一对多和多对一存在着关联关系(外键与主键的关系).本博文主要讲解Inverse属性.cascade属性.这两个属性对关联关系都有影响 Inverse属性 Inverse属性:表示控制权是否转移.. true:控制权已转移[当前一方没有控制权] false:控制权没有转移[当前一方有控制权] Inverse属性,是在维护关联关系的时候起作用的.只能在"一"的一方中使用该属性!Inverse属性的默认值为fasle,也就是当前一方是有控…
接下来这几章节学习的是Hibernate,Hibernate的主要作用就是用来和数据库进行连接,简化了JDBC的操作. 首先,我们创建项目,然后把Hibernate的jar包和sqlserver的驱动导入进去. 接下来,我们须要写一个实体类:User package cn.itcast.hibernate.domain; import java.util.Date; public class User { private int id; //private String name; privat…
inverse后经常用于双向1-N在相关性.它也可以在使用N-N该协会,这里,例如用双1-N联想 或两个与各部门及工作人员,两javabean没有写. 首先,我们的员工看映射文件: <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforg…