【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统一添加请求头

相关推荐
以卿a1 分钟前
C++ 日期计算器的实现(运算符重载)
java·开发语言·c++
召唤神龙11 分钟前
java调用代理ip:轻松实现高效网络请求,提升开发效率
java
小扳28 分钟前
Web 毕设篇-适合小白、初级入门练手的 Spring Boot Web 毕业设计项目:电影院后台管理系统(前后端源码 + 数据库 sql 脚本)
java·前端·数据库·spring boot·mysql·spring·课程设计
吃一克鹅蛋31 分钟前
Spring 框架环境搭建
java·后端·spring
百香果果ccc43 分钟前
Java中的File和IO流
java·开发语言·log4j
一路向北North1 小时前
Lucene(2):Springboot整合全文检索引擎TermInSetQuery应用实例附源码
spring boot·全文检索·lucene
委婉待续1 小时前
java抽奖系统(一)
java·开发语言
1.01^10001 小时前
第5-1节:SpringBoot对SpringMVC的自动配置
spring boot
chusheng18402 小时前
Java基于SpringBoot+Vue的藏区特产销售平台
java·vue.js·spring boot·藏区特产销售平台·特产销售平台
Java学长-kirito2 小时前
springboot/ssm网购平台管理系统Java在线购物商城管理平台web电商源码
java·前端·spring boot