Spring Boot项目中如何上传头像?

在我们常见的各大App中,或多或少我们都见过上传头像的功能吧??

但是在Spring Boot项目中如何上传头像呢?

上传头像主要用到@RequestPart注解

来看一下小编的代码吧!

复制代码
@RestController
@RequestMapping("/param")
public class ParamController {
    //上传头像
    @RequestMapping("/upload")
    public String upload(@RequestPart MultipartFile multipartFile){
        //获取图片名称
        System.out.println(multipartFile.getOriginalFilename());
        return "success 上传成功";
    }
}

对上述代码进行测试的时候,只能在Postman中进行了,浏览器肯定不能使用了!!

当我们在Postman中输入:http://localhost:8080/param/upload

并且正确选择file

此时,我们回到Idea中,日志有着下述的情况:

此时我们便将文件成功的上传了!

但是,仅仅将文件上传成功以后还不行!!

当我们使用B站,抖音快手的时候,肯定上传过头像,但是,上传一次就行了,以后都不用在上传了,所以,我们便可以将其保存下来!!

至于保存在那儿,这就看大家的需求了!

在这里,小编仅起演示作用!

将上传的文件保存下来

请看笔者代码:

复制代码
@RestController
@RequestMapping("/param")
public class ParamController {
    //上传头像
    @RequestMapping("/upload")
    public String upload(@RequestPart MultipartFile multipartFile) throws IOException {
        //获取图片名称
        System.out.println(multipartFile.getOriginalFilename());
        //将上传的图片保存
        multipartFile.transferTo(new File("F:/ceshi/"+multipartFile.getOriginalFilename()));;
        return "success 上传成功";
    }
}

重新启动程序,并在Postman中测试为:

成功上传!!

至于其他的操作,比如:多次上传如何改名等问题,小编便不再测试!!

相关推荐
阿俊-全栈开发1 小时前
LikeShop 单商户SaaS商城分销模块二开:佣金计算与结算逻辑实现
java·开发语言·微服务·likeshop·likeshop开源商城·likeshop多商户
wuminyu4 小时前
C++协程实现接收端的零拷贝Buffer管理原理剖析
java·linux·c语言·jvm·c++
m0_380743874 小时前
C++中的freopen的用法实例详解
开发语言·c++
Escalating_xu5 小时前
【Python】基础语法(1):常量、变量、类型、输入输出与运算符
开发语言·python
jimy15 小时前
polymorph.cpp里面的“析构函数、智能指针”问题
开发语言·c++
m0_380743875 小时前
PHP 8.3 缓存清除不生效怎么排查
开发语言·php
朝朝辞暮i5 小时前
C++ 第 6 课:switch —— 多状态选择
开发语言·c++·算法
小凡geo6 小时前
本地商家 GEO:用脚本一键生成 FAQPage 结构化数据,让 AI 切片更稳
开发语言·人工智能·python·microsoft·搜索引擎·ai
Zhou1411366 小时前
SpringBoot_03_Web开发
前端·spring boot·python
朝朝辞暮i6 小时前
C++ 第 4 课:if / else —— 让程序自己做决定
开发语言·c++