教会你怎么使用SpringMVC 文件上传

简介: 教会你怎么使用SpringMVC 文件上传

?前言

教会你怎么使用SpringMVC 文件上传

?个人简介:大家好,我是尘觉,希望我的文章可以帮助到大家,您的满意是我的动力??


?教会你怎么使用SpringMVC 文件上传

基本介绍

SpringMVC为文件上传提供了直接的支持,这种支持是通过即插即用的MultipartResolver实现的

Spring用Jakarta Commons FileUpload技术实现了一个MultipartResolver

实现类:CommonsMultipartResovler

Spring MVC 上下文中默认没有装配 MultipartResovler,

因此默认情况下不能处理文件的上传工作,如果想使用 Spring 的文件上传功能,

需现在上下文中配置 MultipartResolver

<!--配置文件上传需要的bean-->
    <bean class="org.springframework.web.multipart.commons.CommonsMultipartResolver"
          id="multipartResolver"/>

需求分析/图解

?代码实现

引入 springmvc 文件上传需要jar

创建fileUpload.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>文件上传</title>
</head>
<body>
<h1>文件上传的演示</h1>
<form action="<%=request.getContextPath()%>/fileUpload" method="post" enctype="multipart/form-data">
    文件介绍:<input type="text" name="introduce"><br>
    选择文件:<input type="file" name="file"><br>
    <input type="submit" value="上传文件">
</form>
</body>
</html>

配置中文过滤器,

在 web.xml, 使用 Spring 提供的,前面我们配置过了

中文乱码处理

配置文件上传解析器,

<!--配置文件上传需要的bean-->
    <bean class="org.springframework.web.multipart.commons.CommonsMultipartResolver"
          id="multipartResolver"/>

创建FileUploadHandler.java

@Controller
public class FileUploadHandler {
    //编写方法,处理文件上传的请求
    @RequestMapping(value = "/fileUpload")
    public String fileUpload(@RequestParam(value = "file") MultipartFile file,
                             HttpServletRequest request, String introduce) throws IOException {
        //接收到提交的文件名
        String originalFilename = file.getOriginalFilename();
        System.out.println("你上传的文件名= " + originalFilename);
        System.out.println("introduce=" + introduce);
        //得到要把上传文件保存到哪个路径[全路径:包括文件名]
        String fileFullPath =
                request.getServletContext().getRealPath("/img/" + originalFilename);
        //创建文件
        File saveToFile = new File(fileFullPath);
        //将上传的文件,转存到saveToFile
        file.transferTo(saveToFile);
        return "success";
    }
}

?完成测试

(页面方式 ),

看文件是否成功上传 , 浏 览 器 : http://localhost:8080/springmvc/fileUpload.jsp

(Postman 方式)

注意需要选择文件的形式…,

?总结

  1. 配置jar包的时候要小心看有没有进去
  2. 注意要配置文件上传解析器
    如果遇到困难可以私信我


文章到这里就结束了,如果有什么疑问的地方请指出,诸佬们一起来评论区一起讨论?

希望能和诸佬们一起努力,今后我们一起观看感谢您的阅读?

如果帮助到您不妨3连支持一下,创造不易您们的支持是我的动力?


目录
相关文章
|
7月前
|
前端开发 Java 开发工具
一篇博客教会您SpringMVC文件上传、下载,多文件上传及工具jrebel的使用
一篇博客教会您SpringMVC文件上传、下载,多文件上传及工具jrebel的使用
24 0
|
11月前
|
存储 搜索推荐 Java
6 种方式读取 Springboot 的配置,老鸟都这么玩(原理+实战)
6 种方式读取 Springboot 的配置,老鸟都这么玩(原理+实战)
333 0
6 种方式读取 Springboot 的配置,老鸟都这么玩(原理+实战)
|
XML 小程序 Java
简单粗暴,详细得不要不要的 JavaWeb快速入门
简单粗暴,详细得不要不要的 JavaWeb快速入门
|
Java 数据库连接 mybatis
【SSM框架解析】——前篇:详解动态代理【案例驱动】(案例源码自取)
今天开始要学习SSM框架了,新的开始我决定用博客来记录自己的学习过程,和CSDN上的大佬们一同进步。
【SSM框架解析】——前篇:详解动态代理【案例驱动】(案例源码自取)
|
Java
【重温SSM框架系列】8 - SpringMVC获取请求数据
【重温SSM框架系列】8 - SpringMVC获取请求数据
182 0
【重温SSM框架系列】8 - SpringMVC获取请求数据
|
存储 缓存 JavaScript
SpringBoot静态资源配置原理(源码一步步分析,详细易懂)
SpringBoot静态资源配置原理(源码一步步分析,详细易懂)
229 0
SpringBoot静态资源配置原理(源码一步步分析,详细易懂)
|
Web App开发 Java 应用服务中间件
【快速上手SpringBoot】盘点盘点入门程序制作的四种方式(有图有代码)(一)
【快速上手SpringBoot】盘点盘点入门程序制作的四种方式(有图有代码)(一)
【快速上手SpringBoot】盘点盘点入门程序制作的四种方式(有图有代码)(一)
|
Java 编译器 Maven
【快速上手SpringBoot】盘点盘点入门程序制作的四种方式(有图有代码)(二)
【快速上手SpringBoot】盘点盘点入门程序制作的四种方式(有图有代码)(二)
【快速上手SpringBoot】盘点盘点入门程序制作的四种方式(有图有代码)(二)
|
Java
JavaWeb| JSTL标签库看这篇文章就够了!(含案例)
JavaWeb| JSTL标签库看这篇文章就够了!(含案例)
265 0
JavaWeb| JSTL标签库看这篇文章就够了!(含案例)
http://www.vxiaotou.com