一个hibernate 多对多应用上的问题

fjhooo 2010-02-24 10:49:22
现在有资源(Resource)和部门(Department)两个对象

资源会被提交给部门做审核用,审核通过后,则属于该部门的人员可以查到通过审核的资源。

问题1.如果交给你做,你会用哪种关联映射来处理这种关系呢?


我这边使用的是多对多双向关联,因为审核这个业务的需要,

那么对于每一条“资源---部门”的关系,都要有一条键值去维护它的审核

状态。部门人员看到的通过审核的资源,就是与部门建立了关系,并且关系的状态为“审核通过”的数据库记录

构思如上。

但是发现多对多一般是主键关联映射,按照我上面的描述的话,需要在第三方表中生成多一个叫审核状态的字段

问题2.不知道hibernate多对多关联映射中,有没提供这样的手段,可以操纵对象往第三方关系表中插入非主键关联的外键

呢?有的话应该怎么写呢,网上找了很久都没找到。

回答有帮助可以多给分,非常感谢。
...全文
101 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
nevernam 2010-02-25
  • 打赏
  • 举报
回复
引用 5 楼 colin_pxx 的回复:
可以增加一张表记录什么部门审核什么资源
三个字段就行:
主键ID,部门ID,资源ID


不需要再多条主键了,R_D表本身就是复合主键.

就是如果部门对资源多对多的中间表上能生成多一个"审核状态"的字段,问题就解决了

阿士匹灵 2010-02-25
  • 打赏
  • 举报
回复
学习学习学习学习学习
BearKin 2010-02-25
  • 打赏
  • 举报
回复
类似的问题俺见过很多(我也问过) 可是一般情况下都是LZ一开始提供一个自己当前设计的东东 这个问题的问题或许不在什么多对多应用上 也许资源-部门这种关系本身就有问题呢?

首先 为何一个资源会对应多个部门? 难道一个资源可以被多个部门所使用么? 那样的话如果有一个资源只能针对一个部门使用的该怎么办?
colin_pxx 2010-02-25
  • 打赏
  • 举报
回复
可以增加一张表记录什么部门审核什么资源
三个字段就行:
主键ID,部门ID,资源ID
archko 2010-02-24
  • 打赏
  • 举报
回复
多对多还能不在中间表插入记录?那怎么对.
问题:资源和部门有什么关系呢?部门里的人是可以查看通过审核的资源,而不是该部门的资源?
当资源被审核后是属于该部门的?还是独立的.
或者说资源的部门的关系根本就是没有关系.
部门的人只能查看已审核的资源,
不能查看未审核的资源,这又何来多对多呢?
资源-->审核状态.0表已审核,1表未审核,2表....
部门通过状态位查看资源.
nevernam 2010-02-24
  • 打赏
  • 举报
回复
我也有这个问题,关注ing
重返春季 2010-02-24
  • 打赏
  • 举报
回复
不懂,希望高手参与。帮楼主顶一下!!

67,550

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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