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

相关推荐
阿方.9188 分钟前
《数据结构全解析:栈(数组实现)》
java·开发语言·数据结构
YC运维12 分钟前
Ansible题目全解析与答案
java·算法·ansible
程序员清风22 分钟前
贝壳一面:年轻代回收频率太高,如何定位?
java·后端·面试
考虑考虑33 分钟前
Java实现字节转bcd编码
java·后端·java ee
Dovis(誓平步青云)34 分钟前
《探索C++11:现代语法的内存管理优化“性能指针”(下篇)》
开发语言·jvm·c++
charlie11451419142 分钟前
前端三件套简单学习:HTML篇1
开发语言·前端·学习·html
Mr.Entropy1 小时前
请求超过Spring线程池的最大线程(处理逻辑)
数据库·sql·spring
kebeiovo1 小时前
项目必备流程图,类图,E-R图实例速通
开发语言·r语言·流程图
软件开发-NETKF88881 小时前
JSP到Tomcat特详细教程
java·开发语言·tomcat·jsp·项目运行
渣哥1 小时前
为什么 JDK 1.8 要给 HashMap 加红黑树?
java