千家信息网

SpringBoot怎么接收通过http上传的multi-file的文件

发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,这篇文章主要讲解了"SpringBoot怎么接收通过http上传的multi-file的文件",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Spring
千家信息网最后更新 2025年12月01日SpringBoot怎么接收通过http上传的multi-file的文件

这篇文章主要讲解了"SpringBoot怎么接收通过http上传的multi-file的文件",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"SpringBoot怎么接收通过http上传的multi-file的文件"吧!

接收通过http 上传的multi-file的文件。

构建工程

为例创建一个springmvc工程你需要spring-boot-starter-thymeleaf和 spring-boot-starter-web的起步依赖。为例能够上传文件在服务器,你需要在web.xml中加入标签做相关的配置,但在sringboot 工程中,它已经为你自动做了,所以不需要你做任何的配置。

                        org.springframework.boot            spring-boot-starter-web                            org.springframework.boot            spring-boot-starter-test            test                            org.springframework.boot            spring-boot-starter-thymeleaf            

创建文件上传controller

直接贴代码:

@Controllerpublic class FileUploadController {    private final StorageService storageService;    @Autowired    public FileUploadController(StorageService storageService) {        this.storageService = storageService;    }    @GetMapping("/")    public String listUploadedFiles(Model model) throws IOException {        model.addAttribute("files", storageService                .loadAll()                .map(path ->                        MvcUriComponentsBuilder                                .fromMethodName(FileUploadController.class, "serveFile", path.getFileName().toString())                                .build().toString())                .collect(Collectors.toList()));        return "uploadForm";    }    @GetMapping("/files/{filename:.+}")    @ResponseBody    public ResponseEntity serveFile(@PathVariable String filename) {        Resource file = storageService.loadAsResource(filename);        return ResponseEntity                .ok()                .header(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=\""+file.getFilename()+"\"")                .body(file);    }    @PostMapping("/")    public String handleFileUpload(@RequestParam("file") MultipartFile file,                                   RedirectAttributes redirectAttributes) {        storageService.store(file);        redirectAttributes.addFlashAttribute("message",                "You successfully uploaded " + file.getOriginalFilename() + "!");        return "redirect:/";    }    @ExceptionHandler(StorageFileNotFoundException.class)    public ResponseEntity handleStorageFileNotFound(StorageFileNotFoundException exc) {        return ResponseEntity.notFound().build();    }}

这个类通过@Controller注解,表明自己上一个Spring mvc的c。每个方法通过
@GetMapping 或者@PostMapping注解表明自己的 http方法。

  • GET / 获取已经上传的文件列表

  • GET /files/{filename} 下载已经存在于服务器的文件

  • POST / 上传文件给服务器

创建一个简单的 html模板

为了展示上传文件的过程,我们做一个界面:
在src/main/resources/templates/uploadForm.html

    

File to upload:

上传文件大小限制

如果需要限制上传文件的大小也很简单,只需要在springboot 工程的src/main/resources/application.properties 加入以下:

spring.http.multipart.max-file-size=128KBspring.http.multipart.max-request-size=128KB

感谢各位的阅读,以上就是"SpringBoot怎么接收通过http上传的multi-file的文件"的内容了,经过本文的学习后,相信大家对SpringBoot怎么接收通过http上传的multi-file的文件这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

文件 工程 服务器 学习 服务 内容 大小 方法 注解 配置 限制 代码 就是 思路 情况 文章 更多 标签 模板 界面 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络技术简历自我评价 互联网科技影片 广州工商银行的软件开发中心在哪 文物三维模型数据库 达梦数据库sql关键词转译 登录王者服务器未响应是什么问题 大量word存储查询数据库 美国网络安全科技馆 html5 远程数据库 网络技术带来的便利和一定的挑战 2021黑客文化与网络安全期末考试 美国采取的网络安全措施真实意图 标签打印机电脑要连服务器吗 软件开发交付物 护苗网络安全课抵制盗版 适合W10的用友数据库 浙江卖飞网络技术有限公司 湖北中医药大学网络安全 一般软件开发过笔试得多少分 对网络安全没有影响的是什么 广州工商银行的软件开发中心在哪 传承网络技术有限公司 数据库的jpa 合适的软件开发培训 中科电集团网络安全 网络安全加固的汇总分析 山东软件开发价格走势 数据库发布变更 成都java手机软件开发工具包 创建学生管理数据库sql
0