1
管理安全
我按照這個博客教程,併成功地得到它的工作: http://jugojava.blogspot.com/2011/02/jdbc-security-realm-with-glassfish-and.html集裝箱Glassfish的
我有一個名爲我的兩個實體Group
和User
。有一個雙向的多對多關係。 現在我在博客中完成它的原因是因爲我正在創建一個管理員頁面,我希望能夠添加新用戶。我也讓用戶有機會自己註冊,他們將有user
的角色。
@Entity
public class Group implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String groupName;
@ManyToMany
@JoinTable(joinColumns = {@JoinColumn(name="group_id")}, inverseJoinColumns = {@JoinColumn(name="user_id")})
private List<User> users;
....
}
和
@Entity
@Table(name = "app_user")
public class User implements Serializable {
public static final String ALL = "User.all";
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String firstName;
private String lastName;
private Integer age;
private String username;
private String email;
private String password;
@ManyToMany(mappedBy = "users")
private List<Group> groups;
....
}
我的問題是如何將我的組user
分配給用戶時,它註冊沒有我從視圖列表中選擇組?
這就是我在應用程序代碼中所做的,但它將代碼綁定到數據庫中的組的id,是否有更好的方法?
從EJB
public void persistAsUser(User user) {
Group group = new Group(2L, "user");
user.addGroup(group);
userRepository.persist(user);
}