使用类似下面的域类在Spring Boot with Hibernate中实现UserDetails接口是否可以?或者最好使用具有私有用户实例的包装类?
@Entity
@Table(name = "users")
public class User
{
// All fields have setters and getter that aren't included in the code
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "user_id")
private Integer id;
@Column(name = "email")
private String email;
@Column(name = "username")
private String userName;
@Column(name = "password")
@Transient
private String password;
}
答案 0 :(得分:1)
没关系。您将不得不实现一些处理角色功能的方法。根据我的经验,用户名和密码必须作为类属性存在。
以下是如何使用springboot实现JWT的一个很好的例子:https://auth0.com/blog/implementing-jwt-authentication-on-spring-boot/
它包含一个实现UserDetails的User类。