atitit.atitit.hb many2one relate hibernate 多对一关联配置..

1. 多对一单向 @ManyToOne 1

1. 其中@JoinColumn 注解 2

2. @targetEntity注解 2

2. 生成的sql LEFT OUTER 2

3. 多对一也可以通过关联表的方式来映射,通过 @JoinTable 注解可 2

4. 另外一个属性也关联到table column(recomn?? ) 3

5. 参考 3

1. 多对一单向 @ManyToOne

(数据库设计,多在在多方设计外键)

数据库设计:主键列不可分,联合主键不可有部分依赖,不能存在传递依赖

注解中在多方的类中加入一个"一方"的类,然后在get方法之上加上@ManyToOne

作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://blog.csdn.net/attilax

·     @ManyToOne(cascade=   {CascadeType.PERSIST,CascadeType.MERGE},targetEntity= CompanyImpl.class)

·    @JoinColumn(name="COMP_ID")

·    public Company getCompany() {

·      return company;

·    }

·    ...

·

1. 其中@JoinColumn 注解

· 是可选的,关键字段默认值和一对一关联的情况相似。列名为:主题的关联属性名 + 下划线 + 被关联端的主键列名。本例中为company_id,因为关联的属性是company, Company的主键为 id.

· creator_ID   %属性名称%_主键列名(not cls property name)

· 要是不能coc,要设置此注解.

·

2. @targetEntity注解

· 有个targetEntity属性,该参数定义了目标实体名。通常不需要定义,大部分情况为默认值。但下面这种情况则需要 targetEntity 定义(使用接口作为返回值,而不是常用的实体)。

·  ...

·

2. 生成的sql LEFT OUTER

FROM

gv_material gvmaterial0_

LEFT OUTER JOIN t_user_users tuserusers1_ ON gvmaterial0_.create_user = tuserusers1_.ID

3. 多对一也可以通过关联表的方式来映射,通过 @JoinTable 注解可

· 定义关联表。该关联表包含指回实体的外键(通过@JoinTable.joinColumns)以及指向目标实体表的外键(通过@JoinTable.inverseJoinColumns).

·

· @Entity()

· public class Flight implements Serializable {

·

·    @ManyToOne( cascade = {CascadeType.PERSIST, CascadeType.MERGE} )

·    @JoinTable(name="Flight_Company",

·        joinColumns = @JoinColumn(name="FLIGHT_ID"),

·        inverseJoinColumns = @JoinColumn(name="COMP_ID")

·    )

·    public Company getCompany() {

·        return company;

·    }

·    ...

· }

·

4. 另外一个属性也关联到table column(recomn?? )

Jonjye nen single test l ...

insertable = false:该外键列不出现在INSERT语句里面

updatable = false:该外键列不出现在UPDATE语句里面

这种用法最常见的情况就是这个类里面有另外一个属性直接关联到一个外键:

@Column(name="USER_ID")

Long user_id;

@OneToMany

@JoinColumn(name = "USER_ID", insertable = false,updatable = false)

User user;

5. 参考

hibernate注解 - java - ITeye技术网站.htm

使用Hibernate注解来配置多对一单向的三种方法_Saminar2012_新浪博客.htm

atitit.atitit.hb many2one relate hibernate 多对一关联配置..的更多相关文章

  1. hibernate多对多关联映射

    关联是类(类的实例)之间的关系,表示有意义和值得关注的连接. 本系列将介绍Hibernate中主要的几种关联映射 Hibernate一对一主键单向关联Hibernate一对一主键双向关联Hiberna ...

  2. 05.Hibernate多对多关联

        前言:本文讲解使用Hibernate映射多对多关联关系,并使用多种方式映射多对多关联. 1.数据库表的多对多关系     本文根据学生信息表(tb_student)和教师信息表(tb_teac ...

  3. Hibernate多对多关联

    多对多关联: 示例:Teacher和Student,一个Teacher可以教很多student,一个Student也可以被很多teacher教   多对多单向关联 Teacher知道自己教了哪些学生, ...

  4. hibernate多对多关系配置

    一.创建用户,角色实体类. 一名用户可以有多个角色.一个角色可以对于多名用户. 用户实体类 public class User { private int uId; private String uN ...

  5. Hibernate 多对多关联映射, 中间表加查询条件

    package com.coracle.yk.xpo.po.base; import java.util.Date; import java.util.HashSet; import java.uti ...

  6. Hibernate 多对多关联Demo

    以学生[Student ]与课程[Course ]之间的关系为例: //Course .java public class Course implements Serializable { priva ...

  7. Hibernate多对多关联映射的HQL中的in条件查询问题

    群里有朋友求解一个问题,高分求一条HQL多对多查询语句 . 问题描述见 http://topic.csdn.net/u/20090621/16/4eac6fe0-bf3e-422e-a697-f758 ...

  8. Hibernate 多对一关联查询

     版权声明:本文为博主原创文章,如需转载请标注转载地址.  博客地址:http://www.cnblogs.com/caoyc/p/5598269.html  一.单向多对一和双向多对一的区别 如果只 ...

  9. hibernate 多对一关联

    (转自尚学堂教学内容)   注解多对一: package com.bjsxt.hibernate; import javax.persistence.Entity; import javax.pers ...

随机推荐

  1. 何修改WAMP中mysql默认空密码--转

    何修改WAMP中mysql默认空密码  http://www.cnblogs.com/hooray/archive/2011/07/23/2114792.html WAMP安装好后,mysql密码是为 ...

  2. hibernate执行session.createQuery(hql)时hql若有参数则报错

    项目从Jboss换位Tomcat服务器,打开如下Hql都报错: SELECT COUNT(*) FROM SystemUser WHERE STATUS != -1 解决方法:在Lib中加入antlr ...

  3. cadence学习之原理图——连线

    重点: (1)两种连接方式:Place Net和Place Net Alias (2)交叉线之间的电气连接Place Junction (3)引脚悬空 Place no connect (4)两器件管 ...

  4. 简单介绍Android应用特色及详解四大组件

    Android应用特色 Android主要有什么特色呢,有以下几个方面来体现: 四大组件 丰富的系统控件 SQLite数据库等持久化技术 地理位置定位 强大的多媒体 传感器 1,四大组件 Androi ...

  5. 也说面试 - 一个努力的iOS Dev

    你们在金色的余晖中回家,而我却在银色的温柔中,匆匆潜行-----这是我的现状. 今年的招工形式不是很好,难找工作:也难招人.写这篇博客,是为了给各位在找工作的iOS dev 一些参考. 上篇:换坑(去 ...

  6. AS错误:Please configure your build for VectorDrawableCompat.

    运行第一个Android Stdio程序就出现下面这个问题,由于对Android Stdio不熟悉整了三个小时才解决,希望这篇博客能帮助更多的人. 问题:Caused by:java.lang.Run ...

  7. zabbix使用sendEmail发送邮件报警

    sendEmail是一个轻量级,命令行的SMTP邮件客户端.如果你需要使用命令行发送邮件,那么sendEmail是非常完美的选择:使用简单并且功能强大.这个被设计用在php.bashperl和web站 ...

  8. Activity使用startActivityForResult时出现onActivityResult()不执行的问题

    通过使用 startActivityForResult() 和 onActivityResult() 方法可以在Activity之间传递或接收参数.但有时候我们会遭遇onActivityResult( ...

  9. picurl

    from lxml import etreeimport requestsdef getHtml(html): novelcontent = requests.get(html).content re ...

  10. [学习笔记] 七步从AngularJS菜鸟到专家(4和5):指令和表达式 [转]

    这一篇包含了"AngularJS - 七步从菜鸟到专家"系列的第四篇(指令)和第五篇(表达式). 之前的几篇展示了我们应用的核心组件,以及如何设置搭建一个Angular.js应用.在这一部分,我们会厘 ...