@manyToOne.@oneToMany
@ManyToOne注解的这端,是多端
1.在注释@ManyToOne(cascade=CascadeType.REFRESH,optional=true)中将属性optional设置为true,这可以使得即使外键为空时仍可以向表中添加数据。
2.假设Person和Book是一对多的关系,其中Person的成员变量为:
private Integer personId; //此属性与:@ManyToOne(cascade=CascadeType.REFRESH,optional=true)@JoinColumn(name="personId") 对应
private String name;
private Short age;
private List<Book> bookList=new ArrayList<Book>();
对应在MySql中表的结构为:
Person(personId,name,age),不必有bookList一项,在getBookList上方通过注释:@OneToMany(mappedBy="person",cascade=CascadeType.ALL)
@OrderBy(value="bookId ASC")
与Book关系形成一对多的关系。Book的成员变量是:
private int bookId;
private String title;
private double price;
private Person person; //此属性与:@OneToMany(mappedBy="person" 中的person对应
对应在MySql中表的结构为:Book(bookId,title,price,personId),注意要有Person表的主键personId,这样在插入记录时才不会产生异常。在getPerson上方有注释:
@ManyToOne(cascade=CascadeType.REFRESH,optional=true)
@JoinColumn(name="personId")
与@OneToMany形成呼应。
最新文章
- 从零开始编写自己的C#框架(13)——T4模板在逻辑层中的应用(二)
- [LeetCode] Contains Duplicate III 包含重复值之三
- 【原创】自己动手写工具----签到器[Beta 1.0]
- Socket聊天室-TcpListener,TcpClient
- Linux 关机命令
- 服务器列表里找不到OracleOraDb10g_home1TNSListener
- WebService到底是什?
- C# 操作Word知识汇总
- 將後台的Json數據返回到前台
- BackgroundWorker的使用
- C#字符串题目
- MyBatis学习笔记(四) 注解
- Python面向对象3
- 文档PDF开放
- 如何运行一个Vue项目
- mybatis-generator 自动生成查询Vo
- vue2.0 源码解读(一)
- 下载EU台网(欧洲台网)的地震波数据
- Python设计模式 - 基础 - 类/接口之间的六种关系
- 【1】【JUC】JDK1.8源码分析之ArrayBlockingQueue,LinkedBlockingQueue
热门文章
- Filter学习(三)Filter(过滤器)常见应用
- .NET/C# 使窗口永不获得焦点
- UWP 流畅设计中的光照效果(容易的 RevealBorderBrush 和不那么容易的 RevealBackgroundBrush)
- 异步任务中的重新进入(Reentrancy)
- python 抓取网页一部分
- 使用npm install报错- operation not permitted解决
- SSH远程登录CentOS服务器
- 使用JDK合成照片
- java代码--------编写0懂啊PI之间求随机数的方法
- java代码FileInputStream的复制粘贴练习