我有User和Authority实体,连接了ManyToMany关系。 当我使用POST添加新用户时,我想将其设置为默认角色,例如存在“admin”的角色。我不想手动这样做。
@Data
@Entity
public class User {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@Column(unique = true)
@NotNull
private String username;
@ManyToMany(fetch = FetchType.EAGER)
@JoinTable(name = "user_authority", joinColumns = {@JoinColumn(name = "user_id", referencedColumnName = "id")},
inverseJoinColumns = {@JoinColumn(name = "authority_id", referencedColumnName = "id")})
private List<Authority> authorities;
}
我该怎么办?我知道如何设置用户名的默认值,但是当它有关系时我不知道怎么做。
感谢您的帮助
答案 0 :(得分:1)
我认为你可以用纯java来实现这个目的:
npm i fibers@1.0.15
例如,您将拥有枚举private List<Authority> authorities = Arrays.asList(Authority.ADMIN);
,并且您将在系统中创建的每个Authority
对象默认情况下将User
作为权限。然后,当您保存用户时,它的权限也将被保存。