广告
返回顶部
首页 > 资讯 > 精选 >基于Spring实现文件上传功能
  • 660
分享到

基于Spring实现文件上传功能

spring文件上传实现文件 2023-05-31 05:05:46 660人浏览 泡泡鱼
摘要

本小节你将建立一个可以接受Http multi-part 文件的服务。你将建立一个后台服务来接收文件以及前台页面来上传文件。要利用servlet容器上传文件,你要注册一个MultipartConfigElement类,以往需要在WEB.xm

本小节你将建立一个可以接受Http multi-part 文件的服务。

你将建立一个后台服务来接收文件以及前台页面来上传文件。

要利用servlet容器上传文件,你要注册一个MultipartConfigElement类,以往需要在WEB.xml 中配置<multipart-config>,
而在这里,你要感谢SpringBoot,一切都为你自动配置好了。

1、新建一个文件上传的Controller:

应用已经包含一些 存储文件 和 从磁盘中加载文件 的类,他们在cn.tiny77.guide05这个包下。我们将会在FileUploadController中用到这些类。

package cn.tiny77.guide05;import java.io.IOException;import java.util.List;import java.util.stream.Collectors;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.core.io.Resource;import org.springframework.http.HttpHeaders;import org.springframework.http.ResponseEntity;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.ExceptionHandler;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.PathVariable;import org.springframework.web.bind.annotation.PostMapping;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.bind.annotation.ResponseBody;import org.springframework.web.multipart.MultipartFile;import org.springframework.web.servlet.mvc.method.annotation.MvcUriComponentsBuilder;import org.springframework.web.servlet.mvc.support.RedirectAttributes;@Controllerpublic class FileUploadController { private final StorageService storageService; @Autowired public FileUploadController(StorageService storageService) {  this.storageService = storageService; } @GetMapping("/") public String listUploadedFiles(Model model) throws IOException {    List<String> paths = storageService.loadAll().map(    path -> MvcUriComponentsBuilder.fromMethodName(FileUploadController.class,      "serveFile", path.getFileName().toString()).build().toString())    .collect(Collectors.toList());  model.addAttribute("files", paths);  return "uploadFORM"; } @GetMapping("/files/{filename:.+}") @ResponseBody public ResponseEntity<Resource> 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(); }}

--结束END--

本文标题: 基于Spring实现文件上传功能

本文链接: https://www.lsjlt.com/news/223817.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 基于Spring实现文件上传功能
    本小节你将建立一个可以接受HTTP multi-part 文件的服务。你将建立一个后台服务来接收文件以及前台页面来上传文件。要利用servlet容器上传文件,你要注册一个MultipartConfigElement类,以往需要在web.xm...
    99+
    2023-05-31
    spring 文件上传 实现文件
  • Java基于BIO实现文件上传功能
    本文实例为大家分享了Java基于BIO实现文件上传功能的具体代码,供大家参考,具体内容如下 客户端 package com.qst.file; import java.io.B...
    99+
    2022-11-12
  • Android基于OkHttp实现文件上传功能
    本文实例为大家分享了Android基于OkHttp实现文件上传的具体代码,供大家参考,具体内容如下 一、相关概述 Android请求访问服务端大多数情况下依旧是使用http协议,故而...
    99+
    2022-11-13
  • 基于Vue3文件拖拽上传功能实现
    文件上成功能在我们的身边经常遇到,下面小编通过实例代码给大家分享实现方法,效果图如下所示: <template> <div :class="['drag'...
    99+
    2022-11-13
    vue3拖拽上传 vue文件拖拽上传
  • 基于SpringBoot上传任意文件功能的实现
    一、pom文件依赖的添加<dependencies> <dependency> <groupId>org.springframework.boot</groupId> ...
    99+
    2023-05-31
    springboot 上传 任意文件
  • 基于nodejs+express(4.x+)实现文件上传功能
    Nodejs是一个年轻的编程框架,充满了活力和无限激情,一直都在保持着快速更新。基于Nodejs的官方Web开发库Express也在同步发展着,每年升级一个大版本,甚至对框架底层都做了大手术。在Expres...
    99+
    2022-06-04
    文件上传 功能 nodejs
  • Java基于BIO怎么实现文件上传功能
    这篇文章给大家介绍Java基于BIO怎么实现文件上传功能,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。客户端package com.qst.file;import java.io.BufferedI...
    99+
    2023-06-21
  • Spring框架实现文件上传功能
    在Java中实现文件的上传有多种方式,如smartUpload或是使用Strus2,本文与大家分享使用Spring框架中的MultipartFile类来实例文件的上传。不啰嗦了,直接上干货。先是编写了一个实现文件上传的类FileUpload...
    99+
    2023-05-30
    spring 文件上传 实现文件
  • 基于gitee如何实现上传下载文件的功能
    本文小编为大家详细介绍“基于gitee如何实现上传下载文件的功能”,内容详细,步骤清晰,细节处理妥当,希望这篇“基于gitee如何实现上传下载文件的功能”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。方案的选择文件...
    99+
    2023-07-05
  • Spring Boot简单实现文件上传功能
    目录前言后端处理物理路径和虚拟路径映射前言 前端处理 通过form表单来上传文件提交方式为postenctype格式为"multipart/form-data"i...
    99+
    2022-11-13
  • Golang+Android基于HttpURLConnection实现的文件上传功能示例
    本文实例讲述了Golang+Android基于HttpURLConnection实现的文件上传功能。分享给大家供大家参考,具体如下: 这里要演示的是使用Android程序作为客...
    99+
    2022-06-06
    示例 文件上传 golang Android
  • Android基于Http协议实现文件上传功能的方法
    本文实例讲述了Android基于Http协议实现文件上传功能的方法。分享给大家供大家参考,具体如下: 注意一般使用Http协议上传的文件都比较小,一般是小于2M 这里示例是上传...
    99+
    2022-06-06
    HTTP 方法 文件上传 http协议 Android
  • MVC中怎么基于Ajax和HTML5实现文件上传功能
    这篇文章主要讲解了“MVC中怎么基于Ajax和HTML5实现文件上传功能”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MVC中怎么基于Ajax和HTML5实...
    99+
    2022-10-19
  • 基于HTML5+js+Java实现单文件文件上传到服务器功能
    上传单文件到服务器                  &nb...
    99+
    2023-05-31
    js java 上传
  • vue2中基于vue-simple-upload实现文件分片上传组件功能
    本文最主要参考的是这一篇,后端也是用django来完成。 大文件上传(秒传/断点续传)_使用Vue-Simple-Uploader插件 --Vue/Django完整实现 https:...
    99+
    2022-11-13
  • Ajax配合Spring如何实现文件上传功能
    这篇文章将为大家详细讲解有关Ajax配合Spring如何实现文件上传功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、 需求Web表单页面,可以通过表单上传图片以及其...
    99+
    2022-10-19
  • springmvc实现文件上传功能
    一个简单的springmvc文件上传例子 所需的依赖 只需要这个就好了。在idea的依赖关系图中,commons-fileupload包含了commons-io依赖 <d...
    99+
    2022-11-11
  • ASP.NET实现文件上传功能
    本文实例为大家分享了ASP.NET实现文件上传功能的具体代码,供大家参考,具体内容如下 1、搭建网站结构 2、编写网页文件 创建一个Web窗体UploadFile和UpFile文件...
    99+
    2022-11-13
  • SpringBoot实现文件上传功能
    经典的文件上传 服务器处理上传文件一般都是先在请求中读取文件信息,然后改变名称保存在服务器的临时路径下,最后保存到服务器磁盘中。本次以thymeleaf搭建demo,因此需要引入th...
    99+
    2022-11-12
  • JSP实现文件上传功能
    本文实例为大家分享了JSP实现文件上传功能的具体代码,供大家参考,具体内容如下 一、准备部分 需要fileupload.jar与io.jar包共同完成。构建完成路径后可继续。 资源地...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作