一对一主键关联单双向

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.wepull.pojo">
<class name="IdCard" table="t_idcard">
<id name="id">
<generator class="native"></generator>
</id>
<property name="name"></property>
<!-- 双向配置如下 -->
<one-to-one name="p"></one-to-one>
</class>
</hibernate-mapping> <hibernate-mapping package="com.wepull.pojo">
<class name="Person" table="t_person">
<id name="id">
<generator class="foreign">
<param name="property">i</param>
</generator>
</id>
<property name="name"></property>
<!-- person找Idcard 单向 -->
<one-to-one name="i" constrained="true"></one-to-one>
</class>
</hibernate-mapping>

一对一外键关联单双向

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.wepull.pojo">
<class name="IdCard" table="t_idcard">
<id name="id">
<generator class="native"></generator>
</id>
<property name="name"></property>
<!-- 双向配置 级联删除-->
<one-to-one name="p" property-ref="i" cascade="delete"></one-to-one>
</class>
</hibernate-mapping> <hibernate-mapping package="com.wepull.pojo">
<class name="Person" table="t_person">
<id name="id">
<generator class="native"></generator>
</id>
<property name="name"></property>
<!-- person找Idcard 单向 -->
<many-to-one name="i" unique="true"></many-to-one>
</class>
</hibernate-mapping>

一对多/多对一

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.wepull.pojo">
<class name="Student" table="t_student">
<id name="id">
<generator class="native"></generator>
</id>
<property name="name"></property>
<!-- 多对一配置如下 -->
<many-to-one name="c" class="Classes"></many-to-one>
</class>
</hibernate-mapping> <hibernate-mapping package="com.wepull.pojo">
<class name="Classes" table="t_classes">
<id name="id">
<generator class="native"></generator>
</id>
<property name="name"></property>
<!-- 一对多 -->
<set name="s" inverse="true"><!-- 由学生管理 -->
<!-- column:多的一方持有一的一方的外键字段 -->
<key column="c"></key>
<one-to-many class="Student" />
</set>
</class>
</hibernate-mapping>

多对多单双向

<hibernate-mapping package="com.wepull.pojo">
<class name="Role" table="t_role">
<id name="id">
<generator class="native"></generator>
</id>
<property name="name"></property>
<!-- 多对多 -->
<set name="u" table="t_user_role">
<key column="r"></key>
<many-to-many class="User" column="u"></many-to-many>
</set>
</class>
</hibernate-mapping> <hibernate-mapping package="com.wepull.pojo">
<class name="User" table="t_user">
<id name="id">
<generator class="native"></generator>
</id>
<property name="name"></property>
<!-- 多对多配置如下 -->
<set name="r" table="t_user_role">
<key column="u"></key>
<many-to-many class="Role" column="r"></many-to-many>
</set> </class>
</hibernate-mapping>

Annotation注解(多对一)

import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
/**
* @author fcs
* 不能自动删除表
* 多对一单向 多方持有一方的外键
* 2014-8-24
*/ @Entity
public class Student {
private int id;
private String name;
private Classes c; @ManyToOne(fetch=FetchType.LAZY)//延迟加载
@JoinColumn(name="cid")//修改表字段名 防止自动生成sid
public Classes getC() {
return c;
}
public void setC(Classes c) {
this.c = c;
}
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)//主键自增长
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}

最新文章

  1. mongodb集群安装及到现在遇到的一些问题
  2. HTML初步入门
  3. Ninject之旅之三:Ninject对象生命周期
  4. perl文件句柄的传递
  5. (26)odoo中的序列运用
  6. ORACLE【0】:基本操作
  7. GridView”的控件 必须放在具有 runat=server 的窗体标记内 “错误提示”
  8. bzoj 3575: [Hnoi2014]道路堵塞
  9. 影响 MySQL Server 性能的相关因素
  10. nginx常用模块
  11. RNN入门(一)识别MNIST数据集
  12. 解码 id_token
  13. 新硬盘挂载-fdisk+mount案例实操
  14. python中除法的注意事项
  15. 个人项目Individual Project:迷宫求解
  16. _talent_req
  17. dynamic(2) – ExpandoObject的使用
  18. 3.4 SpringBoot发送邮件
  19. 利用sys.dm_db_index_physical_stats查看索引碎片等数据
  20. SharePoint研究之表单登录配置

热门文章

  1. 【C++ STL】List
  2. linux sh脚本异常:/bin/sh^M:bad interpreter: No such file or directory
  3. Sass 条件-循环语句
  4. Achain 钱包部署
  5. js常用模板引擎
  6. 2017-2018-1 20179205《Linux内核原理与设计》第八周作业
  7. Python基础=== Tkinter Grid布局管理器详解
  8. linux 下多版本gcc 共存问题
  9. OC 01 类和对象
  10. Redis 集群使用(2)