假设有两个表,订单表和产品表,订单跟产品的关系是一对多的关系,那么在JPA中怎样表示一对多的关系呢?实体关系一对多映射有两种方式:

1 外键关联

//订单表

@Entity

@Table(name = "orders")

public class Order {

@Id

@GeneratedValue(strategy = GenerationType.AUTO)

private Long id;

@OneToMany(cascade = {CascadeType.ALL})

@JoinColumn(name = "order_id")

private List productList;

...

}

//产品表

@Entity

@Table(name = "product")

public class Product {

@Id

@GeneratedValue(strategy = GenerationType.AUTO)

private Long id;

...

这样在表product中会增加一列order_id

2 表关联

//订单表

@Entity

@Table(name = "orders")

public class Order {

@Id

@GeneratedValue(strategy = GenerationType.AUTO)

private Long id;

@OneToMany(cascade = {CascadeType.ALL})

@JoinTable(name = "order_has_product", joinColumns = {@JoinColumn(name = "order_id", referencedColumnName = "id")},inverseJoinColumns = {@JoinColumn(name = "product_id", referencedColumnName = "id")})

private List productList;

...

}

这样在product表中不会增加任何外键,而是新建了一张order_has_product表

java onetomany_@OneToMany注解的使用相关推荐

  1. java中的注解(二)

    今天我继续来介绍java中的注解.注解与接口和类不同的是注解是不允许继承的,但是注解中有一个和继承有关的元注解:@Inherited.如果我们在定义注解时候加上这个元注解那么我们就可以在子类中监测到该 ...

  2. Java、Android注解代码生成(ButterKnife原理、ViewBinding)

    前言 首先需要一些先验知识: 浅谈Java/Android下的注解 Java.Android基础之-反射 Java.Android静态代理与动态代理 简介 在我们常用的框架中注解和自动生成代码的身影很 ...

  3. Java基于自定义注解的面向切面的实现

    目的:实现在任何想要切的地方添加一个注解就能实现面向切面编程 自定义注解类 @Target({ElementType.PARAMETER, ElementType.METHOD}) @Retentio ...

  4. 详解Java中的注解

    在Java中,注解(Annotation)引入始于Java5,用来描述Java代码的元信息,通常情况下注解不会直接影响代码的执行,尽管有些注解可以用来做到影响代码执行. 注解可以做什么 Java中的注 ...

  5. [转] Java @interface 自定义注解

    [From] http://blog.csdn.net/afterlife_qiye/article/details/53748973 1. 注解的好处 注解可以替代配置文件完成对某些功能的描述,减少 ...

  6. java annotation list_Java 注解 (Annotation)你可以这样学

    注解语法 因为平常开发少见,相信有不少的人员会认为注解的地位不高.其实同 classs 和 interface 一样,注解也属于一种类型.它是在 Java SE 5.0 版本中开始引入的概念. 注解的 ...

  7. 五十八、深入了解 Java 中的注解和自定义注解

    @Author:Runsen @Date:2020/7/9 人生最重要的不是所站的位置,而是内心所朝的方向.只要我在每篇博文中写得自己体会,修炼身心:在每天的不断重复学习中,耐住寂寞,练就真功,不畏艰 ...

  8. java中注解的解析_全面解析Java中的注解与注释

    注解一.什么是 Annotation? (注解 or 注释)Annotation, 准确的翻译应该是 -- 注解. 和注释的作用完全不一样. Annotation 是JDK5.0及以后版本引入的一个特 ...

  9. 22、java中的注解

    注解是什么? 注解可以理解成注释.标记.标签的意思,用来标记类.方法等.就相当于现实生活中的一些事物,上边贴一个标签或者写一些注释性文字来描述它可以用来做什么.怎么用.何时用等信息.Java中的注解也 ...

最新文章

  1. 单目视觉里程计性能估计
  2. 对比电机和舵机中的PWM信号的作用
  3. Python 途虎养车全系车型轮毂--参数分析与实现
  4. 程序设计语言python语言概述
  5. 如何写_如何写博士论文?博士生如何写期刊论文?
  6. 架构的“一小步”,业务的一大步 1
  7. python天气查询系统有什么知识点_Python入门 天气查询程序
  8. 上周热点回顾(4.14-4.20)
  9. Dubbo 学习总结(12)—— 十年再出发,Dubbo 3.0 Preview 即将在 3 月发布
  10. 【渝粤教育】国家开放大学2019年春季 1087数学分析专题研究 参考试题
  11. centos 切换用户_【站长亲测】迈拓维矩kvm切换器8口usb高清VGA显示器鼠标键盘切屏共享器8进1出...
  12. com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:
  13. (转)美国进入智能投顾竞争时代
  14. JAVA解析xml文件(DOM)
  15. 医学计算机ppt模板,计算机与医学.ppt
  16. 详版大数据报告_《2018抖音大数据报告》完整版,赶快收藏!
  17. 2345广告,够了!
  18. linux crc工具,Windows和Linux下使用MD5、SHA1、CRC32校验备份文件的完整性
  19. 关闭2345,搜狐等软件的弹窗
  20. 迷你世界滑动方块机器人怎么做_迷你世界中滑动方块怎么做?

热门文章

  1. 数学符号R表示什么?以及带有上标的R代表什么?
  2. 天生最感性的诱惑,这是你香喷喷的鸡哟
  3. Python画樱花树 !
  4. Android逆向之旅---微信封了抖音分享功能,而我要把短视频分享到朋友圈!
  5. 腾讯 COS 对象存储 - SDK 文件上传对接,示例代码
  6. 使用Java实现短信验证码
  7. java 防止恶意刷短信验证码_用户使用java短信验证码时要做好三个保护
  8. MySQL开发技巧 - 批量数据入库及检索
  9. 在海外应用商店如何跟踪广告投放的效果
  10. 2小时07分30秒!尘封逾15年中国马拉松国家纪录被打破 | 美通社头条