当前位置: 首页 > article >正文

SpringBoot企业级开发之【用户模块-更新用户头像】

功能如下所示:

我们先看一下接口文档:

为什么头像是一串字符串呢?因为我们是将头像图片放到第三方去存储,比如:阿里云等

开发思路:

实操:
 

1.controller

注意!这里使用【@PatchMapping】注解的话,作用是获取的参数值是一个http链接,便于转换

//更换头像(处理HTTP请求)@PatchMapping("UpdateAvatar")public Result updateAvatar(@RequestParam String avatarUrl) {userService.updateAvatar(avatarUrl);return Result.success();}

2.service接口

3.service实现类

    //更新用户头像@Overridepublic void updateAvatar(String avatarUrl) {//获取idMap<String, Object> map = ThreadLocalUtil.get();Integer id = (Integer)map.get("id");userMapper.updateAvatar(avatarUrl,id);}

4.Mapper

  //更新用户头像@Update("UPDATE user SET user_pic = #{avatarUrl},update_time = now() WHERE id = #{id}")void updateAvatar(String avatarUrl,Integer id);

这里记得头像的地址我是用OSS阿里云去存储的,你们也可以照例

成功结果:

参数校验:

我们头像插进去的不能是任何值,只能是地址:
 

有个注解叫@URL这个注解可以帮我们对传入的参数进行自动校验是否为地址

在controller内注入即可:

 //更换头像(处理HTTP请求)@PatchMapping("updateAvatar")public Result updateAvatar(@RequestParam @URL String avatarUrl) {userService.updateAvatar(avatarUrl);return Result.success();}

相关文章:

SpringBoot企业级开发之【用户模块-更新用户头像】

功能如下所示&#xff1a; 我们先看一下接口文档&#xff1a; 为什么头像是一串字符串呢&#xff1f;因为我们是将头像图片放到第三方去存储&#xff0c;比如&#xff1a;阿里云等 开发思路&#xff1a; 实操&#xff1a; 1.controller 注意!这里使用【PatchMapping】注解…...

DAPP实战篇:使用ethersjs连接智能合约并输入地址查询该地址余额

本系列目录 专栏:区块链入门到放弃查看目录-CSDN博客文章浏览阅读400次。为了方便查看将本专栏的所有内容列出目录,按照顺序查看即可。后续也会在此规划一下后续内容,因此如果遇到不能点击的,代表还没有更新。声明:文中所出观点大多数源于笔者多年开发经验所总结,如果你…...

网络流量管理-流(Flow)

1. 传统网络的问题&#xff1a;快递员送信模式 想象你每天要寄100封信给同一个朋友&#xff0c;传统网络的处理方式就像一个固执的快递员&#xff1a; 每封信都单独处理&#xff1a;检查地址、规划路线、盖章、装车…即使所有信的目的地、收件人都相同&#xff0c;也要重复100…...

每日文献(十一)——Part two

今天从第四章&#xff1a;快速RCNN&#xff0c;方法细节开始介绍。 目录 四、快速RCNN&#xff1a;方法细节 4.1 快速R-CNN回顾 4.2 对抗网络设计 4.2.1 遮挡的对抗空间信息损失 4.2.2 对抗空间Transformer网络 4.2.3 对抗融合 五、实验 5.1 实验设置 5.2 PASCAL VOC…...

Laravel 实现 队列 发送邮件功能

一. 什么是队列 在构建 Web 应用程序时&#xff0c;你可能需要执行一些任务&#xff0c;例如解析文件&#xff0c;发送邮件&#xff0c;大量的数据计算等等&#xff0c;这些任务在典型的 Web 请求期间需要很长时间才能执行。 庆幸的是&#xff0c;Laravel 可以创建在后台运行…...

一、绪论(Introduction of Artificial Intelligence)

写在前面&#xff1a; 老师比较看重的点&#xff1a;对问题的概念本质的理解&#xff0c;不会考试一堆运算的东西&#xff0c;只需要将概念理解清楚就可以&#xff0c;最后一个题会出一个综合题&#xff0c;看潜力&#xff0c;前面的部分考的不是很深&#xff0c;不是很难&…...

Web攻防—SSRF服务端请求伪造Gopher伪协议无回显利用

前言 重学Top10的第二篇&#xff0c;希望各位大佬不要见笑。 SSRF原理 SSRF又叫服务端请求伪造&#xff0c;是一种由服务端发起的恶意请求&#xff0c;SSRF发生在应用程序允许攻击者诱使服务器向任意域或资源发送未经授权的请求时。服务器充当代理&#xff0c;执行攻击者构造…...

2025蓝桥杯python A组题解

真捐款去了&#xff0c;好长时间没练了&#xff0c;感觉脑子和手都不转悠了。 B F BF BF 赛时都写假了&#xff0c; G G G 也只写了爆搜。 题解其实队友都写好了&#xff0c;我就粘一下自己的代码&#xff0c;稍微提点个人的理解水一篇题解 队友题解 B 思路&#xff1a; 我…...

使用Python建模量子隧穿

引言 量子隧穿是量子力学中的一个非常有趣且令人神往的现象。在经典物理学中,我们通常认为粒子必须克服一个势垒才能通过它。但是,在量子力学中,粒子有时可以“穿越”一个势垒,即使它的能量不足以克服这个势垒。这种现象被称为“量子隧穿”。今天,我们将通过 Python 来建…...

微信小程序开发常用语法和api

vue写习惯了&#xff0c;小程序太久不做&#xff0c;一些语法和api都忘记。本文总结下小程序常用的语法和api 语法 绑定事件和传参 绑定事件还有很多&#xff0c;触摸反馈事件&#xff0c;表单事件&#xff0c;媒体事件后续更新细说。 <!-- 绑定事件 bindtap 事件传参 da…...

【时时三省】(C语言基础)选择结构程序综合举例

山不在高&#xff0c;有仙则名。水不在深&#xff0c;有龙则灵。 ----CSDN 时时三省 下面综合介绍几个包含选择结构的应用程序。 例题1&#xff1a; 写一程序&#xff0c;判断某一年是否为闰年。 程序1&#xff1a; 先画出判别闰年算法的流程图&#xff0c;见下图用变量le…...

Redis实现分布式定时任务

设计思路 任务表示&#xff1a;每个任务通过一个特定格式的键来表示。键名可以包含任务ID等信息&#xff0c;值可以是任务的具体内容或指向任务详情的引用。过期机制&#xff1a;利用Redis的EXPIRE命令为任务设置过期时间&#xff0c;当到达设定的时间点时&#xff0c;Redis会…...

File 类 (文件|文件夹操作)

一、File 类 1.1 前言 在 JDK 中 通过 java.io.File 类&#xff0c;可以实现操作系统重文件|文件夹的创建、删除、查看、重命名等操作。 1.2 File 类构造方法 File 一共提供了四个构造方法&#xff0c;都是有参构造。其中最常使用的是 File(String) 和 File(String, String)…...

Html页面Table表格导出导入Excel文件 xlsx.full

Html页面Table表格导出Excel文件 引用 xlsx.full.min.js 文件 导出 <!DOCTYPE html> <html> <head><meta charset"utf-8" /><title></title><script src"https://cdn.bootcdn.net/ajax/libs/jquery/3.6.3/jquery.min.j…...

【资料分享】瑞芯微RK3576,8核2.2GHz+6T算力NPU工业核心板说明书

核心板简介 创龙科技SOM-TL3576-S是一款基于瑞芯微RK3576J/RK3576高性能处理器设计的4核ARM Cor...

埃隆·马斯克如何通过开源创新塑造未来

李升伟 编译 埃隆马斯克的名字在多个行业回响——从电动汽车、太空探索到人工智能及更多领域。虽然许多人关注他革命性的公司&#xff08;如特斯拉、SpaceX、Neuralink和The Boring Company&#xff09;&#xff0c;但较少有人意识到他在开源软件运动中悄然却深远的影响力。本…...

ALOPS智能化运维管理平台

AIOps&#xff08;Artificial Intelligence for IT Operations&#xff09;即智能运维&#xff0c;是将人工智能技术应用于 IT 运维管理领域&#xff0c;以实现自动化、智能化的运维决策和管理。以下是关于 AIOps 的详细介绍&#xff1a; 核心能力 数据收集与整合&#xff1a…...

Hadoop文件操作指南:深入解析文件操作

1 Hadoop文件系统概述 Hadoop分布式文件系统(HDFS)是Hadoop生态的核心存储组件&#xff0c;专为大规模数据集设计&#xff0c;具有高容错性和高吞吐量特性。 HDFS核心特性: 分布式存储&#xff1a;文件被分割成块(默认128MB)分布存储多副本机制&#xff1a;每个块默认3副本&…...

使用Fortran读取HDF5数据

使用Fortran读取HDF5数据 下面我将介绍如何在Fortran中读取HDF5文件中的各种类型数组数据&#xff0c;包括一维数组、二维数组、元数组和变长数组。 准备工作 首先需要确保系统安装了HDF5库&#xff0c;并且在编译时链接了HDF5库。例如使用gfortran编译时&#xff1a; gfor…...

STM32 HAL库之EXTI示例代码

外部中断按键控制LED灯 在main.c中 HAL_Init(); 初始化Flash&#xff0c;中断优先级以及HAL_MspInit函数&#xff0c;也就是 stm32f1xx_hal.c 中 HAL_StatusTypeDef HAL_Init(void) {/* Configure Flash prefetch */ #if (PREFETCH_ENABLE ! 0) #if defined(STM32F101x6) || …...

通过C#将GB18030编码转义为UTF-8

使用C#代码&#xff0c;对于GB18030编码转义为UTF-8格式。 using System.Text;public class FileEncodingConverter {// 支持转换的文件扩展名列表&#xff08;可根据需求扩展&#xff09;private static readonly string[] SupportedExtensions { ".sln", ".…...

《TCP/IP网络编程》学习笔记 | Chapter 23:IOCP

《TCP/IP网络编程》学习笔记 | Chapter 23&#xff1a;IOCP 《TCP/IP网络编程》学习笔记 | Chapter 23&#xff1a;IOCP通过重叠 I/O 理解 IOCPepoll 和 IOCP 的性能比较实现非阻塞模式的套接字以纯重叠 I/O 方式实现回声服务器端重新实现客户端测试从重叠 I/O 模型到 IOCP 模型…...

Java学习打卡-Day25-注解和反射、Class类

注解&#xff08;JDK5引入&#xff09; 什么是注解&#xff1f; Java注解&#xff08;Annotation&#xff09;&#xff0c;也叫元数据。一种代码级别的说明&#xff0c;与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面&#xf…...

电感、互感器、变压器和磁珠综合对比——《器件手册--电感/线圈/变压器/磁珠篇》

三、电感/线圈/变压器/磁珠 名称 定义 特点...

CAD导入arcgis中保持面积不变的方法

1、加载CAD数据&#xff0c;选择面数据&#xff0c;如下&#xff1a; 2、加载进来后&#xff0c;右键导出数据&#xff0c;导出成面shp数据&#xff0c;如下&#xff1a; 3、选择存储路径&#xff0c;导出面后计算面积&#xff0c;如下&#xff1a; 4、与CAD中的闭合线面积核对…...

rustdesk自建服务器怎么填写客户端配置信息

目录 # id、api、中继都怎么填&#xff1f;rustdesk程序启动后服务不自动启动 # id、api、中继都怎么填&#xff1f; rustdesk程序启动后服务不自动启动 完全退出RudtDesk程序&#xff08;右下角托盘区有的话&#xff0c;需要右键点退出&#xff09; 创建windows服务&#xff…...

c++进阶之----智能指针

1.概念 在 C 中&#xff0c;智能指针是一种特殊的指针类型&#xff0c;它封装了裸指针&#xff08;raw pointer&#xff09;的行为&#xff0c;并通过 RAII&#xff08;Resource Acquisition Is Initialization&#xff0c;资源获取即初始化&#xff09;机制自动管理动态分配的…...

六、测试分类

设计测试用例 万能公式&#xff1a;功能测试性能测试界面测试兼容性测试安全性测试易用性测试 弱网测试&#xff1a;fiddler上行速率和下行速率 安装卸载测试 在工作中&#xff1a; 1.基于需求文档来设计测试用例&#xff08;粗粒度&#xff09; 输入字段长度为6~15位 功…...

Apollo源码总结

官方课程 项目源码 源码库简介&#xff1a; 1.apollo&#xff1a;算法库 2.apollo-kernel&#xff1a;改进LINUX内核。添加实时性补丁。 3. apollo-platform&#xff1a;改进ROS系统。去中心化&#xff0c;增加共享内存通信方式&#xff0c;兼容protobuf。 4.apollo-contrib&am…...

电感详解:定义、作用、分类与使用要点

一、电感的基本定义 电感&#xff08;Inductor&#xff09; 是由导线绕制而成的储能元件&#xff0c;其核心特性是阻碍电流变化&#xff0c;将电能转化为磁能存储。 基本公式&#xff1a; 自感电动势&#xff1a; E -L * (di/dt) &#xff08;L&#xff1a;电感值&#xff0c…...