SpringMVC多个文件上传及上传后立即显示图片功能

 更新时间:2017年10月13日 09:53:25   作者:William_HoF  
这篇文章主要介绍了SpringMVC多个文件上传及上传后立即显示图片功能,非常不错,具有参考借鉴价值功能,需要的朋友可以参考下

多文件上传就是改良一个方法把MultipartFile类换成CommonsMultipartFile类,因为上传多个文件用数组方式的话MultipartFile类不能初始化,它不支持数组

package com.meng.upload;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import javax.servlet.http.HttpServletRequest;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.commons.CommonsMultipartFile;
@Controller
public class upload {
  @RequestMapping(value="/upload",method=RequestMethod.POST)
  public String upload(@RequestParam("file1") CommonsMultipartFile[] file1, HttpServletRequest request) {
    for (CommonsMultipartFile commonsMultipartFile : file1) {
      try {
        File file = new File(request.getServletContext().getRealPath("upload"),
            System.currentTimeMillis() + "_"
                + commonsMultipartFile.getOriginalFilename());
        System.out.println(file.getPath()+"");
        FileOutputStream fileOutputStream = new FileOutputStream(file);
        fileOutputStream.write(commonsMultipartFile.getBytes());
        fileOutputStream.close();
      } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
      }
    }
    return "ok";
  }
}

index.jsp页面上传立即显示图片

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
 <head>
  <title>My JSP 'index.jsp' starting page</title>
  <script type="text/javascript">
  //判断浏览器是否支持FileReader接口
  if (typeof FileReader == 'undefined') {
    alert("<h1>当前浏览器不支持FileReader接口</h1>");
  } 
  //选择图片,马上预览
  function xmTanUploadImg(obj) {
    var file = obj.files[0];
    var reader = new FileReader();
    reader.onload = function(e) {
      var img = document.getElementById("img1");
      img.src = e.target.result;
    }
    reader.readAsDataURL(file);
  }
  </script>
 </head>
 <body>
  <form action="upload.upload" method="post" enctype="multipart/form-data">
    file1::<input type="file" name="file1" accept=".jpg,.png" onchange="xmTanUploadImg(this)" />
    <input type="submit" />
    <img id="img1" />
  </form>
 </body>
</html>

总结

以上所述是小编给大家介绍的SpringMVC多个文件上传及上传后立即显示图片功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • Java的类型擦除式泛型详解

    Java的类型擦除式泛型详解

    Java语言中的泛型只存在于程序源码之中,在编译后的字节码文件里,则全部泛型都会被替换为原来的原始类型(Raw Type),并且会在相应的地方插入强制转型的代码。这篇文章主要介绍了Java的类型擦除式泛型,需要的朋友可以参考下
    2021-08-08
  • java.lang.Runtime.exec() Payload知识点详解

    java.lang.Runtime.exec() Payload知识点详解

    在本篇文章里小编给大家整理的是一篇关于java.lang.Runtime.exec() Payload知识点相关内容,有兴趣的朋友们学习下。
    2020-03-03
  • java 中enum的使用方法详解

    java 中enum的使用方法详解

    这篇文章主要介绍了java 中enum的使用方法详解的相关资料,希望通过本文能帮助到大家,理解掌握java 中enum的使用方法,需要的朋友可以参考下
    2017-09-09
  • Spring Boot项目@RestController使用重定向redirect方式

    Spring Boot项目@RestController使用重定向redirect方式

    这篇文章主要介绍了Spring Boot项目@RestController使用重定向redirect方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • IntelliJ IDEA语法报错

    IntelliJ IDEA语法报错"Usage of API documented as @since 1.6+"的解决

    今天小编就为大家分享一篇关于IntelliJ IDEA语法报错"Usage of API documented as @since 1.6+"的解决办法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-10-10
  • 详解用maven搭建springboot环境的方法

    详解用maven搭建springboot环境的方法

    本篇文章主要介绍了详解用maven搭建springboot环境的方法,这里整理了详细的代码,非常具有实用价值,有需要的小伙伴可以参考下
    2017-08-08
  • java web开发中大量数据导出Excel超时(504)问题解决

    java web开发中大量数据导出Excel超时(504)问题解决

    开发测试时候导入数据遇到大数据导入的问题,整理了下,需要的朋友可以参考下
    2017-04-04
  • 最简单易懂的java数组排序方法整理

    最简单易懂的java数组排序方法整理

    这篇文章主要给大家整理介绍了最简单易懂的java数组排序方法,文中通过示例代码介绍的非常详细,对大家学习或者使用java具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-07-07
  • 用java实现冒泡排序算法

    用java实现冒泡排序算法

    两两比较待排序记录的关键字,发现两个记录的次序相反时即进行交换,直到没有反序的记录为止
    2013-01-01
  • 关于try 和 throw 简单使用示例

    关于try 和 throw 简单使用示例

    每过一段时间,就总是会对try有点生疏,特别写了个程序来测试以下,有时候 throw是底层抛出来的,你不处理,默认就throw了
    2013-08-08

最新评论