1 hibernate 的对象关系映射 Orm: 类-----表 属性------字段 对象------记录 表:在数据库中存在主外键的关系,反向工厂类是由表生成,在由表生成类的时候,类和类之间存在者某个关系.将数据库的主外键关系,在java类型进行体现和维护(建立数据之间的关系和断开关系). 2 单向的one-to-many 家庭和成员(家庭和成员之间的关系,是由家庭进行体现,成员不体现) 父亲和子女 班级和学生 -- 2.1 单向one-to-many数据库的模型 在数据库中两张表,产生主外…
双向one-to-many 描述部门和岗位:一个部门有多个岗位 将单向的one-to-many 和many-to-one合并. 4.1双向的one-to-many数据库模型 create table department ( did int, dname varchar ); create table work ( id int, pname varchar, did int, constraint fk_did foreign key(did) references department(di…
1 双向many-to-many 业务模型: 描述员工和项目 一个员工同时可以参与多个项目 一个项目中可以包含多个员工 分析:数据库的数据模型,通过中间关系表,建立两个one-to-many构成many-to-many create table emp ( eno int primary key auto_increment, ename varchar ); create table project ( pid int primary key auto_increment, pname var…
一个员工一辆车:one-to-one 实现一:让汽车表中的外键唯一 create table emp ( eid int primary key auto_increment, ename varchar ); create table car ( cid int primary key auto_increment, cnumber varchar, eid int, constraint fk_eid foreign key(eid) referecnces emp(eid), constr…
在上一篇中我们简单介绍了多对一的关联映射,本文介绍hibernate中一对多的关联映射. 1.设计表结构 虽然关联关系由多对一变为一对多,但是我们表结构不会发生改变,只是指向变了. 2.创建student对象 3.创建Grade对象 4.写hbm.xml文件 5.生成数据库表 生成sql语句 6.构建数据 注意:如果在配置文件中设置外键列不能为null,这里不可以先保存student数据,因为此时grade的数据不存在会抛出外键不存在的异常.如果外键可以为null,会在保存grade数据后去up…
举例说明: 一对多关系的两张表:boy.girl(一个男孩可以多个女朋友) boy表结构 Field   Type        ------  -----------  name    varchar(50)  pk age     varchar(50)  girl表结构 Field   Type         ------  -----------  name    varchar(50)  pk bf      varchar(50)  fk [保存时:Inverse与cascade]…
1. 基于连接表的单向“一对多”关联,应该优先被采用其中指定many-to-many的unique="true",为单向“一对多”,不指定就是单向“多对多” <class name="Person">    <id name="id" column="personId"><generator class="native"/></id>    <set n…
单向的many-to-one 案例: 班级和学生 父亲和子女 单向:只能由其中一方维护关系 Many-to-one中有many的一方法维护或者体现两者之间的关系. 单向的many-to-one描述学生和班级的关系. create table t_clazz ( cid int primary key auto_increment, cname varchar not null ); create table t_ student ( sno int primary key auto_increm…
1.创建如下项目结构 2.在项目的src下创建hibernate.cfg.xml主配置文件 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/…
领域对象:Game(游戏), Room(游戏群),两者一对多的关系,SQL语句中会用到JOIN public class Game : AggregateRoot { public string Tag { get; set; } public string Title { get; set; } public string Description { get; set; } public IEnumerable<Room> Rooms { get; set; } public Game()…