Spring OAuth框架下增加用户属性的注意事项

2019-09-18 15:51:43 浏览数 (1)

今天要在用户类中增加一个枚举属性

代码语言:javascript复制
public enum UserIdentity implements Localisable {
    OWNERCAR("车主"),
    SYSTEMOPERATOR("平台操作员"),
    SERVICEOPERATOR("服务商"),
    PRODUCTOPERATOR("配件商");

    private String value;

    private UserIdentity(String value) {
        this.value = value;
    }

    @Override
    public String getValue() {
        return value;
    }
}
代码语言:javascript复制
@Data
public class AppUser implements Serializable {

   private static final long serialVersionUID = 611197991672067628L;

   private Long id;
   private String username;
   private String password;
   private String nickname;
   private String headImgUrl;
   private String phone;
   private Integer sex;
   private Boolean enabled;
   private String type;
   private String receiveAddress;
   private String province;
   private Date createTime;
   private Date updateTime;
   private UserIdentity userIdentity;
}

由于AppUser类是在公共模块中,所以用户中心和鉴权中心共用这一个类。

当我们修改了用户中心的dao、mapper后,需要注意的是,即便鉴权中心没有修改任何东西也一定要重新编译打包,因为修改了公共模块,否则鉴权中心无法识别AppUser类的新属性,清除redis的token信息,重新登录(如果是本地操作切记一定要在本地登录,如果是远程操作则在远程登录,如果两边不同,登录后不起效果),才可以获取到该新属性。具体结果如下

0 人点赞