【发布时间】:2014-02-03 20:16:45
【问题描述】:
我有角色和权限表以及使用注释的连接表 role_permission:
@OneToMany
@JoinTable(name="ROLE_PERMISSION", joinColumns=@JoinColumn(name="role_id"),
inverseJoinColumns=@JoinColumn(name="permission_id"))
ROLE ROLE_PERMISSION PERMISSION (Static)
-------- ----------- --------
id ------------------ role_id
rolename permission_id ----- id
description permission_name
--------- ---------- --------
问题是,权限已经填满了记录,应该是只读的。
如何填充 ROLE_PERMISSION 连接表而不需要另一个对象,也不必在静态权限表中存储数据?
非常感谢一些专家的建议。
【问题讨论】:
-
您可能必须使用 DTO。为了更准确地创建一个 DTO 对象,假设 ROLE_PERMISSIONDto,它将仅包含 Role 和权限对象,并尝试使用 Hibernate
Transformer转换您的查询结果。 -
除非你真的需要它是应用程序级别的,否则我会直接在数据库中进行。只需编写一个将在应用程序启动时执行的 SQL 脚本。
-
嗨@Amogh - 我只需要在 ROLE_PERMISSION 表上写。
-
嗨@SpartanElite-它确实应该在应用程序级别。
标签: java mysql hibernate join mapping