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);

相关推荐
短剑重铸之日21 小时前
《SpringBoot4.0初识》第一篇:前瞻与思想
java·开发语言·后端·spring·springboot4.0
2501_9418779821 小时前
从配置热更新到运行时自适应的互联网工程语法演进与多语言实践随笔分享
开发语言·前端·python
lsx20240621 小时前
Python 运算符详解
开发语言
蓝色王者1 天前
springboot 2.6.13 整合flowable6.8.1
java·spring boot·后端
程序炼丹师1 天前
CMakeLists中 get_filename_component详解
开发语言
Tao____1 天前
基于Ruoyi开发的IOT物联网平台
java·网络·物联网·mqtt·网络协议
꧁Q༒ོγ꧂1 天前
C++ 入门完全指南(四)--函数与模块化编程
开发语言·c++
花哥码天下1 天前
apifox登录后设置token到环境变量
java·后端
listhi5201 天前
对LeNet-5的matlab实现,识别MINST手写数字集
开发语言·matlab