• SpringMVC-文件上传


    文件上传客户端表单需要满足:

    表单项type=“file”

    表单的提交方式是post

    表单的enctype属性是多部分表单形式,及enctype=“multipart/form-data”


    实现步骤

    1、添加依赖
    2、配置解析器
    3、创建表单
    4、后台实现


    添加依赖

    <dependency>
                <groupId>commons-fileupload</groupId>
                <artifactId>commons-fileupload</artifactId>
                <version>1.3.1</version>
            </dependency>
            <dependency>
                <groupId>commons-io</groupId>
                <artifactId>commons-io</artifactId>
                <version>2.3</version>
            </dependency>
    

    配置解析器

    <!--    配置文件上传解析器-->
        <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
            <!--        最大上传文件大小-->
            <property name="maxUploadSize" value="5000000"></property>
            <!--        默认文件编码-->
            <property name="defaultEncoding" value="UYF-8"></property>
        </bean>
    

    创建表单

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>Title</title>
    </head>
    <body>
    
    <form action="${pageContext.request.contextPath}/seventeen" method="post" enctype="multipart/form-data">
        <input type="text" name="username"><br/>
        <input type="file" name="upload"><br/>
        <input type="submit" value="提交">
    </form>
    
    
    </body>
    </html>
    

    后台实现

    @RequestMapping(value="/seventeen")
        @ResponseBody
    //    这里方法中的形参名需要跟表单中<input>控件中的name相同
        public void test17(String username,MultipartFile upload){
    //        将上传的文件进行保存
    //        获得上传文件的名称,这里的fileNnme和username是不同的,username是上传文件时自命名的,fileName是文件本来的名字
            String fileName = upload.getOriginalFilename();//获得文件名称
            try {
                upload.transferTo(new File("/Users/liuliu/Desktop/测试文件夹/"+fileName));
            } catch (IOException e) {
                e.printStackTrace();
            }
    
        }
    
  • 相关阅读:
    速达开发小组面试题分享下
    NC V6 nchome文件目录及其作用介绍
    GIL 线程池 进程池 同步 异步 阻塞 非阻塞
    线程
    守护进程进程安全
    并发
    22个所见即所得在线 Web 编辑器
    asp.net操纵Oracle存储过程
    JQuery 中each的使用方法
    JQuery实现简单的服务器轮询效果
  • 原文地址:https://www.cnblogs.com/lyd447113735/p/14409226.html
Copyright © 2020-2023  润新知