2.2. Jakarta Persistence 实体作为角色存储
使用以下示例将角色存储在另一个 Jakarta Persistence 实体中:
@UserDefinition
@Table(name = "test_user")
@Entity
public class User extends PanacheEntity {
@Username
public String name;
@Password
public String pass;
@ManyToMany
@Roles
public List<Role> roles = new ArrayList<>();
}
@Entity
public class Role extends PanacheEntity {
@ManyToMany(mappedBy = "roles")
public List<User> users;
@RolesValue
public String role;
}
注意
本例演示了存储和访问角色。要更新现有用户或创建新用户,请为 公共 List<Role> 角色 标上 @Cascade (CascadeType.ALL),或选择特定的 CascadeType。