精华内容
下载资源
问答
  • 父级pom文件案例上传

    2020-01-15 11:17:15
    pom文件,如其中有不需要的jar包,可以自行删除,可能没有什么用,
  • Maven: nexus上传Pom文件

    千次阅读 2020-06-15 15:39:48
    这里写自定义目录标题Maven: nexus上传Pom文件 Maven: nexus上传Pom文件 有时候我们会需要单独部署一个文件到maven的本地库或者远程库中,一般来说会是一个比较高层的pom文件(即父Pom文件),方法如图所示: ...

    有时候我们会需要单独部署一个文件到maven的本地库或者远程库中,一般来说会是一个比较高层的pom文件(即父Pom文件),方法如图所示:
    pom上传

    展开全文
  • 文件上传的方式Servlet2.5 方式Servlet3.0 方式SpringMVC 方式案例实操Servlet2.5 方式文件上传涉及到前台页面的编写和后台服务器端代码的编写,前台发送文件,后台接收并保存文件,这才是一个完整的文件上传。...

    上回我们说了下文件下载的方式有哪些,这次我们从不同的环境下简单来说说文件上传的方式有哪些。

    文件上传的方式

    • Servlet2.5 方式
    • Servlet3.0 方式
    • SpringMVC 方式

    案例实操

    Servlet2.5 方式

    文件上传涉及到前台页面的编写和后台服务器端代码的编写,前台发送文件,后台接收并保存文件,这才是一个完整的文件上传。

    1) 前台页面

    在做文件上传的时候,会有一个上传文件的界面,首先我们需要一个表单,并且表单的请求方式为 POST;其次我们的 form 表单的 enctype 必须设为”multipart/form-data”即 enctype=“multipart/form-data” 意思是设置表单的 MIME 编码。默认情况下这个编码格式是 ”application/x-www-form-urlencoded”,不能用于文件上传;只有使用了 multipart/form-data 才能完整地传递文件数据。

    上传文件文件:12345678910111213

    想要获取更多Java相关的学习资料,加微信:lezijie007 暗号:999 你需要的通通有哦

    2) 后台 commons-fileupload 的使用

    首先需要导入第三方jar包,http://commons.apache.org/ 下载 commons-io 和 commons-fileupload 两个jar的资源。解压并导入到项目中。commons-fileupload.jar 是文件上传的核心包 commons-io.jar 是 fileupload 的依赖包,同时又是一个工具包。

    7b13facdaeed5824508b5454e113aa57.png

    介绍一下使用到的几个核心类

      DiskFileItemFactory – 设置磁盘空间,保存临时文件。只是一个工具类

      ServletFileUpload – 文件上传的核心类,此类接收 request,并解析

      ServletFileUpload.parseRequest(request); – List 解析 request

      1、创建一个 DiskFileItemFactory 工厂类,并制定临时文件和大小

      2、创建 ServletFileUpload 核心类,接收临时文件,做请求的转换

      3、通过 ServletFileUpload 类转换原始请求,得到 FileItem 集合

      4、遍历集合中的各个元素并处理

      5、判断每个元素是否是普通表单项,如果是则按照普通表单项处理

      6、如果不是普通表单项,则是文件,通过处理的方式进行处理(上传)

    public class UploadServlet extends HttpServlet {private static final long serialVersionUID = 1L;protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// 设定编码,可以获取中文文件名request.setCharacterEncoding("UTF-8");// 获取tomcat下的upload目录的路径String path = getServletContext().getRealPath("/upload");// 临时文件目录String tempPath = getServletContext().getRealPath("/temp");// 检查我们是否有文件上传请求// boolean isMultipart = ServletFileUpload.isMultipartContent(req);// 1、声明DiskFileItemFactory工厂类,用于在指定磁盘上设置一个临时目录DiskFileItemFactory disk = new DiskFileItemFactory(1024 * 10, new File(tempPath));// 2、声明ServletFileUpload,接收上面的临时文件。也可以默认值ServletFileUpload up = new ServletFileUpload(disk);// 3、解析requesttry {List list = up.parseRequest(request);if (list.size() > 0) {for (FileItem file : list) {// 判断是否是普通的表单项if (file.isFormField()) {String fieldName = file.getFieldName();// 中文乱码,此时还需要指定获取数据的编码方式// String value = file.getString();String value = file.getString("UTF-8");System.out.println(fieldName + "=" + value);} else { // 说明是一个文件// 获取文件本身的名称String fileName = file.getName();System.out.println(file.getFieldName());// 处理文件名称fileName = fileName.substring(fileName.lastIndexOf("") + 1);System.out.println("old Name : " + fileName);// 修改名称String extName = fileName.substring(fileName.lastIndexOf("."));String newName = UUID.randomUUID().toString().replace("-", "") + extName;// 保存新的名称,并写出到新文件中file.write(new File(path + "/" + newName));System.out.println("文件名是:" + fileName);System.out.println("文件大小是:" + file.getSize());file.delete();}}}} catch (FileUploadException e) {e.printStackTrace();} catch (Exception e) {e.printStackTrace();}}}123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354

    Servlet3.0 方式

    使用注解 @MultipartConfig 将一个 Servlet 标识为支持文件上传。Servlet3.0 将 multipart/form-data 的 POST 请求封装成 Part,通过 Part 对上传的文件进行操作。

    前台

    上传文件姓名:文件:1234567891011121314

    后台

    @WebServlet("/upload")@MultipartConfigpublic class UploadServlet extends HttpServlet {private static final long serialVersionUID = 1L;protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("上传文件...");// 设置编码request.setCharacterEncoding("UTF-8");// 获取普通表单项参数String uname = request.getParameter("uname");System.out.println(uname);// 上传文件// 得到part对象 request.getpart(name):name代表的是表单中file元素的name属性值Part part = request.getPart("myfile");// 得到文件存放的路径String path = request.getServletContext().getRealPath("/");// 得到文件名String fileName = part.getSubmittedFileName();// 上传part.write(path + fileName);}}123456789101112131415161718192021222324

    SpringMVC 方式

    Pom 文件修改 添加 commons-fileupload 依赖

    commons-fileupload     commons-fileupload     1.3.2 123456789

    servlet-context.xml

    1048576004096 123456789101112131415

    FileController

    import java.io.File; import java.io.IOException; import javax.servlet.http.HttpServletRequest; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartHttpServletRequest; import org.springframework.web.servlet.ModelAndView; @Controller public class FileController {     @RequestMapping("/uploadFile")     public ModelAndView uploadFile(HttpServletRequest request){         ModelAndView mv=new ModelAndView();         mv.setViewName("result");         MultipartHttpServletRequest mr=(MultipartHttpServletRequest) request;         MultipartFile multipartFile= mr.getFile("file");         String path=request.getSession().getServletContext().getRealPath("upload");         System.out.println(path);         if(null!=multipartFile&&!multipartFile.isEmpty()){         String fileName=multipartFile.getOriginalFilename();         try {         multipartFile.transferTo(new File(path,fileName));         mv.addObject("msg", "文件上传成功!");         } catch (Exception e) {         mv.addObject("msg", "上传失败!");         e.printStackTrace();         }         }         return mv; } } 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061

    前台表单

      提交  1234567

    扩展~MIME

    MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型。是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式。

    它是一个互联网标准,扩展了电子邮件标准,使其能够支持:

    非ASCII字符文本;非文本格式附件(二进制、声音、图像等);由多部分(multiple parts)组成的消息体;包含非ASCII字符的头信息(Header information)。

    这个标准被定义在RFC 2045、RFC 2046、RFC 2047、RFC 2048、RFC 2049等RFC中。 MIME改善了由RFC 822转变而来的RFC 2822,这些旧标准规定电子邮件标准并不允许在邮件消息中使用7位ASCII字符集以外的字符。正因如此,一些非英语字符消息和二进制文件,图像,声音等非文字消息原本都不能在电子邮件中传输(MIME可以)。MIME规定了用于表示各种各样的数据类型的符号化方法。 此外,在万维网中使用的HTTP协议中也使用了MIME的框架,标准被扩展为互联网媒体类型。

    查看不同文件对应的 MIME 类型,推荐大家一种方式,以 Tomcat为例,它下面的 web.xml 文件可以查看所有的MIME类型,通过 Ctrl + F 搜索快速找到你想知道的文件对应的 MIME 类型。

    a50d32792985084da6b3d6dd1cc325f4.png
    展开全文
  •  一说明 spingMVC支持文件上传,我们通过Apach 的 commons-fileupload 包的CommonsMultipartResolver 去实现了 spingMVC的MultipartResolver 。 本文章的示例是个简单的多文件上传,根据不同的业务自行修改。二pom...

     一说明

    spingMVC支持文件上传,我们通过Apach 的 commons-fileupload 包的CommonsMultipartResolver 去实现了 spingMVC的MultipartResolver 。 本文章的示例是个简单的多文件上传,根据不同的业务自行修改。

    二pom.xlm

    <dependencies>
            <dependency>
                <groupId>commons-fileupload</groupId>
                <artifactId>commons-fileupload</artifactId>
                <version>1.3.3</version>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
        </dependencies>

    三 application.yml

    spring:
      servlet:
        multipart:
          max-file-size: 200MB #单个文件上传大小
          max-request-size: 600MB #连续上传文件大小
    
    
    youku1327:
     file:
      root:
        path: "C:mydatageneratorversion06" #存储路径

    四controller

    /**
     * @Author lsc
     * @Description <p> </p>
     * @Date 2019/10/2 20:58
     * @Version 1.0
     */
    @RestController
    public class FileUploadController {
    
        @Value("${youku1327.file.root.path}")
        private String fileRootPath;
    
        @PostMapping("/file/upload")
        public String fileUpload(@RequestParam("files")MultipartFile[] files){
            String filePath = "";
            // 多文件上传
            for (MultipartFile file : files){
                // 上传简单文件名
                String originalFilename = file.getOriginalFilename();
                // 存储路径
                 filePath = new StringBuilder(fileRootPath)
                        .append(System.currentTimeMillis())
                        .append(originalFilename)
                        .toString();
                try {
                    // 保存文件
                    file.transferTo(new File(filePath));
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return filePath;
        }
    }

    五启动类

    /**
     * @Author lsc
     * @Description <p> </p>
     * @Date 2019/10/2 20:54
     * @Version 1.0
     */
    @SpringBootApplication
    public class FileUploadApplication {
        public static void main(String[] args) {
            SpringApplication.run(FileUploadApplication.class,args);
        }
    }

    六测试

    发送http的post请求,使用表单形式,key为files需要与MultipartFile[] 的参数名称一致,挑选两个文件,发送成功后,会看到最后返回的文件路径;

    eb8bf9b989049d09007a4f11b2f43a7e.png

    打开保存的文件路径可以发现已经实现文件上传。

    eccca765d49923942ada5b0e854c2a9e.png
    展开全文
  • Spring Boot 2.x 实现文件上传简述此教程是一个日常上传文件的脚手架,用到的很多,就写一个简单的Demo,为了日后更加方便的CV编程,有紧急需求的可直接去源码CV源码地址...?xml version="1.0" en...

    v2-68c8801c4be643df645b8a800b2b18a7_1440w.jpg?source=172ae18b

    Spring Boot 2.x 实现文件上传

    简述

    此教程是一个日常上传文件的脚手架,用到的很多,就写一个简单的Demo,为了日后更加方便的CV编程,有紧急需求的可直接去源码CV

    源码地址

    https://github.com/Gleans/SpringBootLearn/tree/master/springboot-upfile

    新建项目

    v2-e3fbb250ba174a31a1c59716392f47e3_b.jpg

    v2-6f1b3de19183591b12c0ad84467eea6d_b.jpg

    目录

    v2-6952cc73c8b0a88cf155c38e9a547880_b.jpg

    pom.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>2.3.2.RELEASE</version>
            <relativePath/> <!-- lookup parent from repository -->
        </parent>
        <groupId>com.example</groupId>
        <artifactId>springboot-upfile</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <name>springboot-upfile</name>
        <description>Demo project for Spring Boot</description>
    
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
            <java.version>1.8</java.version>
        </properties>
    
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
    
            <!--  Thymeleaf组件 动态页面-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-thymeleaf</artifactId>
            </dependency>
    
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
                <exclusions>
                    <exclusion>
                        <groupId>org.junit.vintage</groupId>
                        <artifactId>junit-vintage-engine</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
        </dependencies>
    
        <build>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                </plugin>
            </plugins>
        </build>
    
    </project>
    
    

    UploadServiceImpl.java

    package com.example.springbootupfile.service.impl;
    
    import com.example.springbootupfile.service.UploadService;
    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.stereotype.Service;
    import org.springframework.web.multipart.MultipartFile;
    
    import java.io.IOException;
    import java.io.InputStream;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    import java.nio.file.StandardCopyOption;
    import java.util.HashMap;
    import java.util.Map;
    
    @Service
    public class UploadServiceImpl implements UploadService {
    
        @Value("${file.path}")
        private String path;
    
        @Override
        public Map<Object, Object> uploadFile(MultipartFile file) throws IOException {
            Map<Object, Object> resultMap = new HashMap<>(4);
    
            if (file.isEmpty()) {
                resultMap.put("code", -1);
                resultMap.put("msg", "文件不能为空");
            }
    
            // 得到上传时的文件du名
            String fileName = file.getOriginalFilename();
            // 获取文件输入流
            InputStream is = file.getInputStream();
    
            /*
             * 使用 Files.copy 命令将文件从输入流源复制到目标目录
             * StandardCopyOption.REPLACE_EXISTING 覆盖已有的目标路径
             */
            Files.copy(is, Paths.get(path + fileName), StandardCopyOption.REPLACE_EXISTING);
    
            resultMap.put("code", 0);
            resultMap.put("msg", "success");
            return resultMap;
        }
    }
    

    自行创建一个 UploadService 接口

    简单的前端上传页面

    templates/index.html

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <h1>上传文件</h1>
    
    <form action="/upload" method="post" enctype="multipart/form-data">
        <label>选择文件</label>
        <input type="file" name="file">
        <button type="submit">上传</button>
    </form>
    </body>
    </html>
    

    templates/result.html

    <!DOCTYPE html>
    <html lang="en" xmlns:th="http://www.w3.org/1999/xhtml">
    <head>
        <meta charset="UTF-8">
        <title>返回页面</title>
    </head>
    <body>
    <h1>返回结果</h1>
    
    <p>返回代码:<span th:text="${code}"></span></p>
    <p>message:<span th:text="${msg}"></span></p>
    </body>
    </html>
    

    配置文件

    配置上传的路径
    file.path=D:baidu

    启动类

    SpringbootUpfileApplication.java

    package com.example.springbootupfile;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    @SpringBootApplication
    public class SpringbootUpfileApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(SpringbootUpfileApplication.class, args);
        }
    
    }
    

    启动项目

    上传页面

    v2-b79fbeadeb116048ee8741a3cd8b6625_b.jpg

    返回页面

    v2-a09ef2a556ea43a95dcbb5989fb12d7e_b.jpg
    展开全文
  • <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=...
  • springmvc文件上传

    2020-08-01 23:44:39
    文章目录1、传统方式文件上传2、Springmvc文件上传3、跨服务器文件上传 1、传统方式文件上传 pom.xml <!--文件上传依赖 --> <dependency> <groupId>commons-fileupload</groupId> <...
  • 文章目录SpringCloudFeign多文件上传Feign多文件上传POM依赖Fiegn接口端配置类Feign接口接口提供端接口消费端在代码中调用Feign多文件上传,上面代码不需要改变消费方代码 SpringCloudFeign多文件上传 Feign多文件...
  • 点击上方Java开发联盟,选择“星标公众号”优质文章,第一时间送达简介:项目要求有excel文件上传这个功能,由于这个功能十分常见所以公司也有这个功能的相关模块来处理,只是接触了springboot有一段时间了,所以想...
  • maven上传jar包含pom文件

    千次阅读 2018-09-26 19:29:00
    mvn deploy:deploy- file -Dfile=D:\rate-limit-core- 1.1 . 1 .jar ...settings.xml 指定setting文件 ...上传到maven私库的时候,注意制定pom文件 转载于:https://www.cnblogs.com/number7/p/9709074.html
  • SpringBoot文件上传下载和多文件上传(图文详解)

    万次阅读 多人点赞 2017-01-16 20:16:02
    最近在学习SpringBoot,以下是最近学习整理的实现文件上传下载的java代码: 1、开发环境: IDEA15+ Maven+JDK1.8 2、新建一个maven工程: 3、工程框架 4、pom.xml文件依赖项...
  • springmvc文件上传与json支持springmvc文件上传pom依赖springmvc.xmlupload.jspXXXControl配置一下图片的虚拟映射:json支持 springmvc文件上传 pom依赖 <dependency> <groupId>commons-fileupload<...
  • jar文件pom.xml文件依赖之间的转换

    千次阅读 2019-02-24 23:42:57
    目录一、Jar文件pom.xml依赖二、pom.xml依赖转Jar文件 一、Jar文件pom.xml依赖 源码获取 (1)、源码已上传至GitHub,地址:https://github.com/291685399/jartopom.git (2)、积分充足的大佬可以使用积分下载,...
  • springMVC文件上传

    2018-09-19 20:55:56
    MultipartFile 支持所有类型文件上传 pom依赖:   &lt;properties&gt; &lt;commons-fileupload.version&gt;1.3.1&lt;/commons-fileupload.version&gt; &lt;lombok.version&...
  • mvn clean deploy -f xxx.xml -Dmaven.test.skip=true
  • 上传jar文件 mvn deploy:deploy-file -Dfile={file} -DrepositoryId={repositoryId} -Durl={url} -DpomFile={pom} -Dpackaging=jar eg: mvn deploy:deploy-file -Dfile=xxx.jar -DrepositoryId=tbsnexus -Durl=...
  • SpringMVC文件上传和Json处理文件上传Json处理 文件上传 pom依赖 <!--文件上传--> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</...
  • Springmvc实现文件上传

    2020-11-26 12:00:55
    Springmvc实现文件上传 pom.xml中引入jar包 <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.7</maven.compiler.source&...
  • 文件上传和拦截器

    2018-02-01 21:37:10
    1. 文件上传 pom.xml的配置 首先我们需要在pom.xml中配置如下的依赖文件 commons-io commons-io 2.4 commons-fileupload commons-fileupload 1.3.1 将工程所需要的jar包进行引入 Spring上下文文件的配置 bean ...
  • 如果只是单独上传jar包到maven私服,则对应的pom文件是由maven私服自动生成的,其中只包含上传jar包文件自身简单的信息(groupId,artifactId,version),而它所依赖的别的jar包的信息不会添加到自动生成的pom文件...
  • SpringMVC文件上传JSON处理 文件上传 pom.xml <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.3<...
  • 目录单文件上传文件上传文件上传 pom 文件中,添加代码: resources/ springmvc.xml 中,添加代码: webapp 中,新建 upload.jsp,加入代码: input 的 type 设置为 file。 form 的 method 设置为 post(get ...
  • maven上传jar和pom文件到nexue私服

    千次阅读 2018-07-03 16:17:51
    文章转自Maven : 将Jar安装到本地仓库和Jar上传到私服 打包到本地仓库 mvn install:install-file -Dfile=C:\Users\madman\Desktop\alipay-sdk-java20161121110022.jar -DgroupId=...
  • pom.xml配置,导入文件上传的相应jar包 <dependencies> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>javax.servlet.jsp-api</artifactId> <version...
  • 文件上传 pom依赖 <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.3</versio...
  • 文件上传 pom.xml <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.3</version> </de...
  • 文件上传 pom依赖添加commons-io <!-- 上传/下载jar https://mvnrepository.com/artifact/commons-io/commons-io --> <dependency> <groupId>commons-io</groupId> <artifactI...
  • 传统文件上传/SpringMVC文件上传/跨服务器上传文件 项目结构fileupload**(文件服务器)/springmvc_fileupload(上传文件服务器)** springmvc_fileupload配置文件 pom.xml <?xml version="1.0" encoding="UTF-8"?...
  • 文件上传 pom.xml application.yml UploadFileController index.html 上传测试 url 映射虚拟路径 application.yml WebMvcConfigurer UploadFileController 上传与访问测试 需求分析 1、Java web 应用...
  • <?xml version="1.0" encoding="UTF-8"?> <project xmlns=... xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,257
精华内容 902
关键字:

文件上传pom