一、问题描述
1)密码屏蔽问题
当在Controller类中获取用户信息并将其内容返回时,Jwt会将密码一并解析并输出,造成安全隐患。
2)驼峰命名和数据库下划线命名不匹配问题
在User类中,命名形式为createTime
,而在数据库中对应命名为create_time
,导致解析失败。
二、解决方法
1)在构建User类存储用户信息时,对于password属性添加@JsonIgnore
注解
// 让springsvm把当前对象转换成json字符串时,忽略password,最终的json字符串中就没有password这个属性了
@JsonIgnore
private String password;//密码
2)配置文件中添加camel关键词
mybatis:
configuration:
map-underscore-to-camel-case: true
// 开启驼峰命名和下划线命名的自动转换