1
我使用seam框架和JPA。
我有一個包含(id_permission,action_permission,discriminator_permission) 幷包含一個實體的作用(id_role,name_role)JPA ManyToMany字段
我用的是雙向關聯多對多生成包含連接表AccountPermission這兩個實體之間的實體許可(id_permission,id_role,name_role,action_permission,discriminator_permission)
@ManyToMany
@JoinTable(name="AccountPermission",
joinColumns={@JoinColumn(name="role_id",
referencedColumnName="role_id"),
@JoinColumn(name="name_role",
referencedColumnName="name_role"),},
inverseJoinColumns={@JoinColumn(name="action_permission",
referencedColumnName="action_permission"),
@JoinColumn(name="discriminator_permission",
referencedColumnName="discriminator_permission"),
@JoinColumn(name="permission_id",
referencedColumnName="permission_id")})
public List<Permission> getPermissions() {
return permissions;
}
public void setPermissions(List<Permission> permissions) {
this.permissions = permissions;
}
所以,你看到的影響在連接表中的所有屬性都來自這兩個表。 我的問題是屬性「name_role」,我不想與它聯合,因爲它是一個可編輯的屬性。所以如何在不加入連接的情況下將這些值保存在連接表中。
是,ROLE_ID和permission_id是角色和權限兩個主鍵,但我需要的時候我堅持的連接表中的作用accountpermission將包含role_id和permission_id以及role_name和permission_action –
瞭解數據庫規範化。沒有理由將此信息放入連接表中,因爲連接表具有該角色的外鍵(該角色包含角色名)和該權限的另一外鍵(已包含permission_action)。 –
是的,我知道......但問題是,當我使用j seammissionstore與縫我需要在表accountpermission存儲permission_action和role_name –