请教一个多对多的问题,头都大了
一个用户可以上传多个文件,并且一个文件也可以共享给多个用户,但共享的时候可以控制权限。我把他们理解成一个多对多关系,用一个组件来处理,组件里有一个type字段来处理权限。在User.hbm.xml里组件的描述如下:
java代码:
<set
name="shareFiles"
table="share_file">
<key column="user_id" not-null="true" update="false" />
<composite-element class="ShareFile">
<property name="type" column="type" type="int"></property>
<many-to-one
name="file"
class="UserFile"
not-null="true"
update="false" />
</composite-element>
</set>
这里如果是用户上传文件的时候感觉比较容易理解,因为用户是主控方嘛!可是如果用户要共享一个文件给其它人的时候,这样处理起来就比较麻烦。而且如果用户如果要删除一个共享操作的时候会显得比较麻烦。
我想过在UserFile.hbm.xml里也加上一个组件处理多对多的关系来处理,不知道这样是否合理,是否还有更好的方法。
谢谢大家给我点意见。
问题点数:20、回复次数:2Top
1 楼rickhunterchen(千山鸟飞绝)回复于 2006-03-03 15:33:09 得分 0
这是一个多对多的关系Top
2 楼GemScorpio(雪之极蓝)回复于 2006-03-03 17:10:47 得分 0
是啊!我这个也是多对多处理啊!
如果不用组件来处理的话,共享的时候怎么控制下载,删除等权限?
也就是说,我可以把一个文件的下载权限共享给一个用户,他只能下,不能删除,也不能修改。Top




