Hibernate @Any 及 @ManyToAny 使用教程
2019独角兽企业重金招聘Python工程师标准>>>
前言
最好的老师是 google,不信你去试下百度
一 @Any 的使用方法
场景:假设一个车辆类,它可以是个人或者公司拥有:
@Entity
@DiscriminatorValue("PRS")
public class Person implements VehicleOwner { ... }
@Entity
@DiscriminatorValue("CPY")
public class Company implements VehicleOwner { ... }
使用@Any注解来映射关系:
@Entity
@DiscriminatorValue("VEH")
public class Vehicle {...@Any(metaColumn=@Column(name="owner_type" , length=3),fetch=FetchType.LAZY)@AnyMetaDef(idType="long", metaType="string" ,metaValues={@MetaValue(targetEntity=Person.class, value="PRS" ),@MetaValue(targetEntity=Company.class, value="CPY" )})@JoinColumn(name="owner_id" )public VehicleOwner getOwner() { ... }public void setOwner(VehicleOwner owner) { ... }...
}
二 @ManyToAny 的使用方法
场景:假设一个车辆类,它可以是多个个人或者公司拥有:
@Entity
@DiscriminatorValue("VEH")
public class Vehicle {...@ManyToAny(metaColumn = @Column( name = "owner_type" ))@AnyMetaDef(idType = "integer", metaType = "string",metaValues = {@MetaValue( targetEntity = Person.class, value="PRS" ),@MetaValue( targetEntity = Company.class, value="CPY" ) })@Cascade( { org.hibernate.annotations.CascadeType.ALL } )@JoinTable(name = "vehicle_owners", joinColumns = @JoinColumn( name = "vehicle_id" ),inverseJoinColumns = @JoinColumn( name = "owner_id" ))public List<Property> getOwners() { ... }private void setOwners(List<VehicleOwner> owners) { ... }...
}
参考文档:http://jpaobjects.sourceforge.net/m2-site/main/documentation/docbkx/html/user-guide/ch04s09.html
转载于:https://my.oschina.net/longyuan/blog/337635
Hibernate @Any 及 @ManyToAny 使用教程相关推荐
- Spring MVC Hibernate MySQL集成CRUD示例教程
Spring MVC Hibernate MySQL集成CRUD示例教程 我们在上一篇教程中学习了如何集成Spring和Hibernate.今天,我们将继续前进,并将Spring MVC和Hibern ...
- Primefaces,Spring 4 with JPA(Hibernate 4 / EclipseLink)示例教程
Primefaces,Spring 4 with JPA(Hibernate 4 / EclipseLink)示例教程 Java Persistence API是标准规范.它提供了一个由不同实现者框架 ...
- Hibernate Tomcat JNDI DataSource示例教程
Hibernate Tomcat JNDI DataSource示例教程 欢迎来到Hibernate Tomcat JNDI DataSource示例教程.我们已经看到如何在独立的Java应用程序中使 ...
- Hibernate Tomcat JNDI数据源示例教程
Welcome to the Hibernate Tomcat JNDI DataSource example tutorial. We have already seen how to use Hi ...
- java hibernate 插入数据_[Java教程]hibernate 返回新插入数据的Id
[Java教程]hibernate 返回新插入数据的Id 0 2015-08-28 10:00:11 例如 表明 studentInfoString sql="set set nocount ...
- primefaces教程_Primefaces,带有JPA的Spring 4(Hibernate 4 / EclipseLink)示例教程
primefaces教程 Java Persistence API is a standard specification. It provides a persistence model that' ...
- hibernate示例_Hibernate条件示例教程
hibernate示例 Welcome to the Hibernate Criteria Example Tutorial. Today we will look into Criteria in ...
- mvc crud_Spring MVC Hibernate MySQL集成CRUD示例教程
mvc crud We learned how to integrate Spring and Hibernate in our last tutorial. Today we will move f ...
- Hibernate教程
Hibernate教程 最近我写了很多hibernate教程.Hibernate是当前市场上最好的Java ORM工具之一.所以这篇文章就像是hibernate教程和示例的所有帖子的索引.您可以按顺序 ...
- hibernate教程_Hibernate教程
hibernate教程 Recently I have written a lot of hibernate tutorial. Hibernate is one of the best Java O ...
最新文章
- Pytorch 中的 5 个非常有用的张量操作
- Java-string字符串
- 深入SQL SERVER 2000的内存管理机制
- 算法 --- 递归实现多级树展开结构
- 现代软件工程系列 学生的精彩文章 (5) 其实还是人的问题
- python 调用 tensorflow.dll_python tensorflow导入DLL加载失败
- linux 打zip gz tar,linux把文件压缩成.tar.gz的命令 | PT Ubuntu Blog
- mysql存储过程数组字符串_Mysql通过存储过程分割字符串为数组
- c语言程序设计删除,C程序设计语言练习1-23 编写一个删除C语言程序中所有的注释语句...
- 运放失真罪魁祸首之压摆率和增益带宽积
- 通过百度BAE搭建微信二次开发的服务(2)
- 区块链是如何解决慈善公益项目中存在的问题呢?
- 根据股票代码特征分类
- MYSQL中日期加减(前一天、后一天等)以及格式化的函数
- 自然语言处理(NLP)发展历程(1),什么是自然语言处理?
- swap (虚拟内存)
- ACP学习笔记(云计算)附题
- 阿里官方Java代码规范标准解析 - 基本数据类型与包装数据类型的使用标准
- mint-ui 各个组件示例
- mac怎么向阿里云服务器上传文件,无需下载其他,自带终端就可以。
热门文章
- PyTorch:tensor-数据处理
- Android程序设置软件图标
- python语言开发环境配置理论_python语言开发环境配置
- 蓝桥杯2015年第六届C/C++A组国赛第四题-穿越雷区
- Dart基础第14篇: 库 自定义库、系统库、第三方库
- rk3399_android7.1平台调试sensor流程记录
- leetcode 448. 找到所有数组中消失的数字(Find All Numbers Disappeared in an Array)
- 从zabbix的数据库获取数据
- :hover 鼠标悬浮时(基本导航)
- django通用视图(类方法)