`
guanliyu
  • 浏览: 4447 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

Spring MVC实现多文件上传

阅读更多
import java.io.File;
import java.io.IOException;
import java.util.Iterator;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

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.multipart.commons.CommonsMultipartResolver;

@Controller
@RequestMapping("/upload")
public class testUpload {
@RequestMapping("/open")
public String open(){
System.out.println("s");
return "common/test";

}
@RequestMapping("/upload2") 
    public String upload2(HttpServletRequest request,HttpServletResponse response) throws IllegalStateException, IOException { 
        //创建一个通用的多部分解析器 
        CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver(request.getSession().getServletContext()); 
        //判断 request 是否有文件上传,即多部分请求 
        if(multipartResolver.isMultipart(request)){ 
            //转换成多部分request   
            MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest)request; 
            //取得request中的所有文件名 
            Iterator<String> iter = multiRequest.getFileNames(); 
            while(iter.hasNext()){ 
                //记录上传过程起始时的时间,用来计算上传时间 
                int pre = (int) System.currentTimeMillis(); 
                //取得上传文件 
                MultipartFile file = multiRequest.getFile(iter.next()); 
                if(file != null){ 
                    //取得当前上传文件的文件名称 
                    String myFileName = file.getOriginalFilename(); 
                    //如果名称不为“”,说明该文件存在,否则说明该文件不存在 
                    if(myFileName.trim() !=""){ 
                        System.out.println(myFileName); 
                        //重命名上传后的文件名 
                        String fileName = "demoUpload" + file.getOriginalFilename(); 
                        //定义上传路径 
                        String path = "E:/" + fileName; 
                        File localFile = new File(path); 
                        file.transferTo(localFile); 
                    } 
                } 
                //记录上传该文件后的时间 
                int finaltime = (int) System.currentTimeMillis(); 
                System.out.println(finaltime - pre); 
            } 
             
        } 
        return "/success"; 
    } 





<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<script type="text/javascript" src="${request.contextPath}/assets/common/plug/jquery.min.js"></script>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<title>Insert title here</title> 
<script type="text/javascript"> 
    i = 1; 
    j = 1; 
    $(document).ready(function(){ 
         
        $("#btn_add1").click(function(){ 
            document.getElementById("newUpload1").innerHTML+='<div id="div_'+i+'"><input  name="file" type="file"  /><input type="button" value="删除"  onclick="del_1('+i+')"/></div>'; 
              i = i + 1; 
        }); 
         
        $("#btn_add2").click(function(){ 
            document.getElementById("newUpload2").innerHTML+='<div id="div_'+j+'"><input  name="file_'+j+'" type="file"  /><input type="button" value="删除"  onclick="del_2('+j+')"/></div>'; 
              j = j + 1; 
        }); 
    }); 
 
    function del_1(o){ 
     document.getElementById("newUpload1").removeChild(document.getElementById("div_"+o)); 
    } 
     
    function del_2(o){ 
         document.getElementById("newUpload2").removeChild(document.getElementById("div_"+o)); 
    } 
 
</script> 
</head> 
<body> 
 
     <h1>springMVC字节流输入上传文件</h1>  
    <form name="userForm1" action="/springMVC7/file/upload" enctype="multipart/form-data" method="post"> 
        <div id="newUpload1"> 
            <input type="file" name="file"> 
        </div> 
         
        <input type="button" id="btn_add1" value="增加一行" > 
        <input type="submit" value="上传" > 
    </form>  
    <br> 
    <br> 
    <hr align="left" width="60%" color="#FF0000" size="3"> 
    <br> 
    <br> 
     <h1>springMVC包装类上传文件</h1>  
    <form name="userForm2" action="/qfshop/upload/upload2" enctype="multipart/form-data" method="post""> 
        <div id="newUpload2"> 
            <input type="file" name="file"> 
        </div> 
        <input type="button" id="btn_add2" value="增加一行" > 
        <input type="submit" value="上传" > 
         
         
    </form>  
</body> 
</html> 


<!-- 文件上传 -->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"/>
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics