Hibernate的如何一对多同时新增呢?

sinat_36648528 2018-03-27 11:03:01
现在我设计了三个表,
用户表,id,name……
爱好表,id,hobby_name
用户爱好中间表,id,user_id,hobby_id(一个用户允许有多个爱好)
请问是用hibernate如何实现,新增一个用户的同时新增他的多个爱好呢?
...全文
288 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
sinat_36648528 2018-03-27
  • 打赏
  • 举报
回复
引用 1 楼 xiewei2222 的回复:
不用中间表了,直接在用户表里面加个栏位uid,表示是爱好表的id。然后分别在两个hbm.xml里面设置one to many 和many to one,再在pojo里面声明下就可以了
那如果一个用户对应多个爱好的话,那数据库会怎样操作呢? 我在想用不用加一个uid,然后用字符串传多个爱好的id,然后在处理
迷途的码农 2018-03-27
  • 打赏
  • 举报
回复
不用中间表了,直接在用户表里面加个栏位uid,表示是爱好表的id。然后分别在两个hbm.xml里面设置one to many 和many to one,再在pojo里面声明下就可以了
北飞的企鹅 2018-03-27
  • 打赏
  • 举报
回复
一对多为什么要中间表呢?在爱好表里面增加用户表的ID不就OK了
sinat_36648528 2018-03-27
  • 打赏
  • 举报
回复
引用 6 楼 qq_23119345 的回复:
一对多为什么要中间表呢?在爱好表里面增加用户表的ID不就OK了
我打算把爱好表只是写分类项目
sinat_36648528 2018-03-27
  • 打赏
  • 举报
回复
引用 4 楼 xiewei2222 的回复:
第四步写错了, private User user=new HashSet<Hobby>();改为 private User user;就好了
啊非常感谢,我去试一下
迷途的码农 2018-03-27
  • 打赏
  • 举报
回复
还有不明白的地方么?
迷途的码农 2018-03-27
  • 打赏
  • 举报
回复
第四步写错了, private User user=new HashSet<Hobby>();改为 private User user;就好了
迷途的码农 2018-03-27
  • 打赏
  • 举报
回复
第一步,user.hbm.xml; <class name="User" table="t_user"> <id name="id"> <generator class="native"></generator> </id> <property name="name" length="20"></property> <set name="hobbys" table="t_hobby"> //此处为注释,标记号为1 <key column="uid"></key> <one-to-many class="Hobby"></one-to-many> </set> </class> 第二步,hobby.hbm.xml; <class name="Hobby" table="t_hobby"> <id name="id"> <generator class="native"></generator> </id> <property name="hobby_name" length="20"></property> <many-to-one name="user" column="uid" class="User"></many-to-one> //此处为注释,标记号为2 </class> 第三步,写User的pojo; public class User{ private int id; private String name; private Set<Hobby> hobbys=new HashSet<Hobby>(); //此处的hobbys要跟user.hbm.xml里面的定义的一样,标记号为 1的地方 ....后面set和get方法 第四步,写Hobby的pojo; public class Hobby{ private int id; private String hobby_name; private User user=new HashSet<Hobby>(); //此处的user要跟hobby.hbm.xml里面的定义的一样,标记号为 2的地方 ....后面set和get方法

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧