JPA'Many2Many
来源:互联网 发布:电子书解压软件下载 编辑:程序博客网 时间:2024/05/17 06:06
Many2Many关系:
Document(主动)<---->(被动)KMFile
class Document
主动关联设置:指定中间表,及字段。
@ManyToMany(fetch=FetchType.LAZY, cascade={CascadeType.PERSIST}, targetEntity=KMFile.class)
@JoinTable(inverseJoinColumns={@JoinColumn(name="file_id")}, name="LINK_KMFile", joinColumns={@JoinColumn(name="linker_id")})
public List<KMFile> getFiles() {
return fileList;
}
class KMFile
被动关联设置:只需设置mappedBy,即本体在主体中的属性(Document#getFiles)。
@ManyToMany(fetch=FetchType.LAZY, cascade={CascadeType.PERSIST}, mappedBy="files", targetEntity=Document.class)
public List<Document> getDocuments() {
return docList;
}
使用示例:
Logger调为Fine,以输出SQL(本例使用derby),执行结果输出:
--INSERT INTO Document (ID, CREATETIME, LASTMODIFIED, TITLE, DESCRIPTION, OWNER_ID) VALUES (?, ?, ?, ?, ?, ?)
bind => [4508551237913941891, null, null, AAA, null, null]
--INSERT INTO KMFile (ID, CREATETIME, NAME, TYPE, SIZE, LASTMODIFIED, TITLE) VALUES (?, ?, ?, ?, ?, ?, ?)
bind => [4508551237913941892, null, null, 0, 0, null, BBB]
--INSERT INTO LINK_KMFile (file_id, linker_id) VALUES (?, ?)
bind => [4508551237913941892, 4508551237913941891]
--SELECT ID, CREATETIME, LASTMODIFIED, TITLE, DESCRIPTION, OWNER_ID FROM Document WHERE (ID = CAST (? AS BIGINT ))
bind => [4508551237913941891]
文档:AAA
文档-附件:BBB
--SELECT ID, CREATETIME, NAME, TYPE, SIZE, LASTMODIFIED, TITLE FROM KMFile WHERE (ID = CAST (? AS BIGINT ))
bind => [4508551237913941892]
附件:BBB
附件-文档:AAA
Relationships: http://www.devx.com/Java/Article/33906/0/page/2
- JPA'Many2Many
- many2many 单向
- many2many 双向
- JAVA one2Many Many2one Many2Many
- Hibernate many2many映射关系
- hibernate笔记(三)------many2many
- hibernate之 10.many2many单向
- hibernate之 11.many2many双向
- hibernate之12.many2many变形
- Hibernate基础------》映射关系---》many2many
- JPA
- JPA
- JPA
- JPA
- JPA
- JPA
- JPA
- jpa
- Java陷阱一箩筐----面试题集
- COMMTIMEOUTS结构说明
- 计算当天是本月第几周
- 花水木之DruParty: Drupal 水滴趴
- Silverlight QQ的联想
- JPA'Many2Many
- 用户编程笔记
- 快速配置tomcat连接池(mysql)
- 每天有空一定上CSDN看看
- VS2005 Web项目安装部署:利用预编译的Dll 隐藏.cs文件 的简单实现
- showModalDialog()方法弹出对话框, 与刷新
- 一個軟件工程師的6年總結
- [轻松一下]--十句关于友谊与爱的哲言
- 无题