【SpringBoot实战篇】获取用户详细信息

1 明确需求

1需要获取用户详细信息

2 接口文档

1基本信息

2请求参数

3 响应数据

响应数据类型:application/json

响应参数说明:

响应数据样例

3 思路分析

1用户名在请求头里获取

4 开发

4.1 控制器usercontroller

复制代码
    @GetMapping("/userInfo")
    public Result<User> userInfo(@RequestHeader(name = "Authorization") String token) {
        //根据用户名查询用户
        Map<String, Object> map = JwtUtil.parseToken(token);
        String username = (String) map.get("username");
        User user = userService.findByUserName(username);
        return Result.success(user);
    }

4.2配置文件application.yal ------开启命名转换

开启驼峰命名(对象属性)和下划线(数据库属性名)命名的自动转换

复制代码
mybatis:
  configuration:
    map-underscore-to-camel-case: true #开启驼峰命名和下划线命名的自动转换

4.3@JsonIgnore

//让springmvc把当前对象转换成json字符串的时候,忽略password,最终的json字符串中就没有password这个属性了

复制代码
public class User {
    @NotNull
    private Integer id;//主键ID
    private String username;//用户名
    @JsonIgnore//让springmvc把当前对象转换成json字符串的时候,忽略password,最终的json字符串中就没有password这个属性了
    private String password;//密码


    @NotEmpty
    @Pattern(regexp = "^\\S{1,10}$")
    private String nickname;//昵称

    @NotEmpty
    @Email
    private String email;//邮箱
    private String userPic;//用户头像地址
    private LocalDateTime createTime;//创建时间
    private LocalDateTime updateTime;//更新时间
}

5 测试

因为@JsonIgnore,这里效果里不显示password

5.1 postman统一添加请求头

相关推荐
Wang's Blog31 分钟前
Java框架快速入门: Spring Security+OAuth2之元注解简化权限表达式
java·数据库·spring
狼爷38 分钟前
硅谷爆火的FDE是AI新风口,还是高级外包?
后端·全栈
xifangge20251 小时前
AGENTS.md 怎么写?涵盖 Java、Python、Vue、Go 的 8 套开箱即用模板
java·vue.js·python
Wang's Blog1 小时前
Java框架快速入门: Spring Security+OAuth2之云服务集成与多因子认证设计
java·开发语言·spring
xinjia_ctrl2 小时前
暑假实习总结
git·后端·spring·maven·intellij-idea
liangsheng_g2 小时前
SpringAOP拦截器链递归与事务钩子补偿源码实战
java·spring
SL_staff2 小时前
制造业私有化文档平台的技术实践:从知识孤岛到可追溯知识资产
java·spring·开源
SL_staff3 小时前
3天上线OKR系统:一名HR与1名工程师如何用JVS完成全栈交付
java·低代码·开源
IT_陈寒3 小时前
Java Stream处理大集合,我的内存怎么就炸了
前端·人工智能·后端
悟空码字3 小时前
四轮对话两张配图:用 WorkBuddy 优化公众号发文配图的实战指南
人工智能·后端·腾讯