weixin_42309549 2009-05-05 13:15
浏览 232
已采纳

hibernate关联的问题?

现在开始学hibernate,今天看了一本hibernate的书,里面,有一个例子,tb_dept表包含的字段id(唯一标识int型),deptName(varchar型),tb_staff表包含的字段id(唯一标识int型),dept_id(int型),staff_name(varchar型),书本里的意思就是用id来表示部门编号和员工编号。

TbDept.hbm.xml配置





TbStaff.hbm.xml配置

1.TbStaff怎么知道dept_id字段对应b_dept表的id呢?

2.如果我在tb_dept加入deptId(int型)字段,令tb_staff表dept_id字段与它对应,这时应该怎么配置?
[b]问题补充:[/b]
我在数据库里面没有设置外键,要关联两个表,一定要设置外键吗?
[b]问题补充:[/b]
不知道为什么,不能回贴,只能在这里补充问题了。
to jbin:
我就是只把tb_dept表的id字段作为唯一标记,仅仅是一个唯一的标记,是int型的,然后在里面添加一个varchar型的deptId字段,因为很多部门编号都是带字母的,然后把tb_staff的dept_id改为varchar型,这样方便对应。
如果我有上面的要求,怎么配置?
[b]问题补充:[/b]
刚才试了下,自己另外设置外键关联不成功,是不是hibernate规定了tb_staff表的外键必须是tb_dept表的主键?

  • 写回答

4条回答 默认 最新

  • weixin_42305554 2009-05-06 11:46
    关注

    恩,是的。这个你多看看SQL相关的资料,把他们的关系整理下。同时你也可以了解下联合主键,在这里不多谈了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 shape_predictor_68_face_landmarks.dat
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制