Hibernate关联关系总结

猜猜这是哪首歌MV里面的片段。推荐这首热门歌曲哦!

文章内容:
1.OnetoOne 单向 双向关联
2.ManytoOne单向 双向关联
3.OnetoMany单向 双向关联
4.ManytoMany 双向关联

1.OnetoOne 单项关联
主控端实体中放置一个被控端的实例作为属性
然后在get被控端实体的方法上用@OnetoOne和@joincolumn(name unique)来指定外键并生成相应的列
被指控端不用做任何特殊注解
我这里是以Account和address作为例子
Account作为主控端address作为被控端
Account中持有address的实例
并且要unique设置为ture,保证唯一一个address对应一个Account

2.OnetoOne 双向关联
只需要在上面的单向关联基础上的被控端加上同样的OnetoOne注解即可,但是里面要是mappedby
来与另一端形成关联,mappedby的值是主控端上持有的被控端实例的变量名

1.ManytoOne单向关联
这里的例子是:多个航班(flight)对应一个公司(company)
只需要在多端持有一端的实例,然后在get方法上添加下面的注解,生成一个外键列即可
一端不需要进行特殊的注解


2.ManytoOne双向关联
同OnetoMany的双向是一样的

OnetoMany单向关联
这里的例子是:一个训练师(trainer)对应多个猴子(monkeys)
在训练师的类总持有一个set集合,对应多个猴子
然后建立关联表
猴子类不需要特殊的注解

OnetoMany双向关联
这里的例子是:一个账户(Account)对应多个订单(orders)
在订单类里持有一个Account实例,然后子啊get方法上生成一个新的外键列

在Account类里面就用mappedby与对应的order形成关联

ManytoMany双向关联
这里的例子是:一个作者(author)有多个粉丝(followers),然后一个粉丝对应多个作者

在作者类里持有一个粉丝类的set集合,然后在get方法上进行注解配置
并生成相应的关联表

另一端粉丝端只需要使用mappedBy来形成呼应,即可完成相互关联


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 上篇文章我们通过注解对映射了单个实体类,但是具体项目中往往实体类之间又是相互关联的,本篇文章就是从实体类之间存在的...
    Single_YAM阅读 4,485评论 0 2
  • 使用注解的目的是简化繁琐的ORM映射文件(.hbm)的配置 JPA全称是java Persistence API(...
    曹达兴阅读 7,280评论 0 5
  • 宛若没有任何前戏 粗暴 果断 痛快 迷离 肯定只有我一个人想多了 ~ 有时在想 窝窝囊囊的自己 到底是为了什么在压...
    妖妖喵喵喵阅读 2,839评论 0 0
  • 回想当年逍遥少,那时欢乐那时恼。 见物生情此时笑,时光飞逝流水年。 物是人非事皆变,何必星辰惹尘埃。 夜景/作(心...
    夜景黑色调阅读 1,441评论 7 0
  • 南方的小城 夏天有两种味道 是一个人时候的淡淡花露水让人安心的味道 是很多人在一起吹起暖暖微风的汗淋淋的味道 图片...
    大清水阅读 1,661评论 2 0

友情链接更多精彩内容