Springboot更新用户头像

人们通常(为徒省事)把一个包含了修改后userName的完整userInfo对象传给后端,做完整更新。但仔细想想,这种做法感觉有点二,而且浪费带宽。

于是patch诞生,只传一个userName到指定资源去,表示该请求是一个局部更新,后端仅更新接收到的字段。

UserController

java 复制代码
    @PatchMapping("/updateAvatar")
    public Result updateAvatar(@RequestParam @URL String avatarUrl){
        userService.updateAvatar(avatarUrl);
        return Result.success();
    }

UserService

java 复制代码
    //更新头像
    void updateAvatar(String avatarUrl);

UserServiceImpl

java 复制代码
    @Override
    public void updateAvatar(String avatarUrl) {
        Map<String,Object> map = ThreadLocalUtil.get();
        Integer id = (Integer) map.get("id");
        userMapper.updateAvatar(avatarUrl,id);
    }

UserMapper

java 复制代码
    //更新用户头像信息
    @Update("update user set user_pic=#{avatarUrl},update_time=now() where id = #{id}")
    void updateAvatar(String avatarUrl,Integer id);

相关推荐
Howard_Stark3 分钟前
Spring生命周期
spring
春眠不觉晓♞12 分钟前
使用多线程快速向Excel中快速插入一万条数据案例
java·学习·excel
Suckerbin20 分钟前
第十一章-PHP表单传值
开发语言·php
计算机毕设定制辅导-无忧学长36 分钟前
Spring 与 ActiveMQ 的深度集成实践(二)
spring·activemq·java-activemq
fantasy_440 分钟前
LeetCode238☞除自身以外数组的乘积
java·数据结构·python·算法·leetcode
GalenZhang88842 分钟前
Java生成微信小程序码及小程序短链接
java·微信小程序·小程序
元亓亓亓1 小时前
Java后端开发day38--不可变集合&Stream流
java·开发语言
溪i1 小时前
react-spring/web + children not defined
前端·spring·react.js
努力创造奇迹1 小时前
C 语言联合体、枚举、typedef 详解
c语言·开发语言
纪元A梦1 小时前
华为OD机试真题——阿里巴巴找黄金宝箱Ⅰ(2025A卷:100分)Java/python/JavaScript/C/C++/GO最佳实现
java·c语言·javascript·c++·python·华为od·go