从零到一构建短链接系统(八)

1.git上传远程仓库(现在才想起来)

git init

git add .

git commit -m "first commit"

git remote add origin OLiyscxm/shortlink

git push -u origin "master"

2.开发全局异常拦截器之后就可以简化UserController

拦截器可以替代为空判断

3.common目录下创建目录serialize,再创建类

public class PhoneDesensitizationSerializer extends JsonSerializer<String> {
    @Override
    public void serialize(String phone, JsonGenerator jsonGenerator, SerializerProvider serializerProvider)
            throws IOException {
        String phoneDesensitization = DesensitizedUtil.mobilePhone(phone);
        jsonGenerator.writeString(phoneDesensitization);
    }
}

4.UserRespDTO添加json序列化注释

5.resp目录下定义一个UserActualRespDTO类,这个类就不要json序列化注释了,再修改UserController,这时就可以选择是否查看真实用户手机号了

@RestController
@RequiredArgsConstructor
public class UserController {

    private final UserService userService;
    /**
     * 
     * 根据用户名查询用户信息
     * 
     */
    @GetMapping("/api/shortlink/v1/user/{username}")
    public Result<UserRespDTO> getUserByUsername(@PathVariable("username") String username) {
        return Results.success(userService.getUserByUsername(username));
    }

    @GetMapping("/api/shortlink/v1/actual/user/{username}")
    public Result<UserActualRespDTO> getActualUserByUsername(@PathVariable("username") String username) {
        return Results.success(BeanUtil.toBean(userService.getUserByUsername(username), UserActualRespDTO.class));
    }
}

6.新增查询用户名是否存在功能

UserService中添加

/**
* 查询用户名是否存在
* @param username 用户名
* @return 存在返回True,不存在返回False
*/

Boolean hasUsername(String username);

UserServiceImpl中添加

@Override
public Boolean hasUsername(String username) {
        LambdaQueryWrapper<UserDO> queryWrapper = Wrappers.lambdaQuery(UserDO.class)
            .eq(UserDO::getUsername, username);
        UserDO userDO = baseMapper.selectOne(queryWrapper);
        return userDO==null;
}

UserController中添加

/**
*查询用户名是否存在
*/

@GetMapping("/api/shortlink/v1/user/has-username")
public Result<Boolean> hasUsername(@RequestParam("username") String username){

        return Results.success(userService.hasUsername(username));
}

7.data一栏OLi存在,返回false

相关推荐

  1. Python构建GPT模型

    2024-03-21 07:42:03       45 阅读
  2. 构建股票预测模型的Python实战教程

    2024-03-21 07:42:03       24 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-21 07:42:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-21 07:42:03       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-21 07:42:03       82 阅读
  4. Python语言-面向对象

    2024-03-21 07:42:03       91 阅读

热门阅读

  1. 洛谷P6866 [COCI2019-2020#5] Emacs

    2024-03-21 07:42:03       38 阅读
  2. gitee上传存储文件、下载文件

    2024-03-21 07:42:03       40 阅读
  3. 开源IT自动化运维工具Ansible Playbook介绍

    2024-03-21 07:42:03       35 阅读
  4. OpenCV特征检测与描述符模块

    2024-03-21 07:42:03       42 阅读
  5. C++_opencv中图像深度、通道和对应数据类型

    2024-03-21 07:42:03       39 阅读
  6. 【MySql】SQLite和MySQL的区别

    2024-03-21 07:42:03       39 阅读
  7. AWS Sagemaker详解

    2024-03-21 07:42:03       35 阅读
  8. Hive面试重点

    2024-03-21 07:42:03       46 阅读
  9. Hive自定义UDF函数

    2024-03-21 07:42:03       41 阅读
  10. 【面试自测】Spring

    2024-03-21 07:42:03       39 阅读
  11. python實現excel轉txt代碼

    2024-03-21 07:42:03       44 阅读
  12. SpringMVC

    SpringMVC

    2024-03-21 07:42:03      39 阅读
  13. 无人机拦截

    2024-03-21 07:42:03       41 阅读
  14. kafka 集群

    2024-03-21 07:42:03       37 阅读
  15. Kafka

    2024-03-21 07:42:03       110 阅读