zoukankan      html  css  js  c++  java
  • springmvc实现文件上传

    1 通过commons-fileupload来实现 导入相关jar包

    commons-fileupload,commons-io

    2 配置springmvc的配置解析器

    mvc:

    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
                <property name="defaultEncoding" value="utf-8"></property>
                <property name="maxUploadSize" value="10485760000"></property>
                <property name="maxInMemorySize" value="40960"></property>
         </bean>

    3 jsp页面

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <base href="<%=basePath%>">
        
        <title>My JSP 'index.jsp' starting page</title>
        <meta http-equiv="pragma" content="no-cache">
        <meta http-equiv="cache-control" content="no-cache">
        <meta http-equiv="expires" content="0">    
        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
        <meta http-equiv="description" content="This is my page">
        <!--
        <link rel="stylesheet" type="text/css" href="styles.css">
        -->
      </head>
      
      <body>
        <form action="upload.do" method="post" enctype="multipart/form-data">
          file:<input type="file" name="file"/> <input type="submit" value="上传"/>
          </form>
      </body>
    </html>

    4 controller代码

    @Controller
    public class FileUploadController {
        @RequestMapping("/upload")
        public String fileupload(@RequestParam("file")CommonsMultipartFile file,HttpServletRequest req) throws IOException{
            //获取文件名
            //file.getOriginalFilename();
            //获取上传文件的路径
            String path = req.getRealPath("/fileupload");
            InputStream is = file.getInputStream();
            OutputStream os = new FileOutputStream(new File(path,file.getOriginalFilename()));
            int len = 0;
            byte[] buffer = new byte[400];
            while((len=is.read(buffer))!=-1){
                os.write(buffer,0,len);
                os.close();
                is.close();
            }
                
            return "/index.jsp";
        }
    
    }

    批量上传的代码

    @RequestMapping("/batch")
        public String fileupload(@RequestParam("file")CommonsMultipartFile file[],
                HttpServletRequest req) throws IOException{
            //获取文件名
            //file.getOriginalFilename();
            //获取上传文件的路径
            String path = req.getRealPath("/fileupload");
            for (int i = 0; i < file.length; i++) {            
            InputStream is = file[i].getInputStream();
            OutputStream os = new FileOutputStream(new File(path,file[i].getOriginalFilename()));
            int len = 0;
            byte[] buffer = new byte[400];
            while((len=is.read(buffer))!=-1)
                os.write(buffer,0,len);
                os.close();
                is.close();        
            }
                
            return "/index.jsp";
        }
  • 相关阅读:
    更改weblogic的jdk环境参数
    解决oracle12c安装失败【INS-30131】执行安装程序验证所需要的初始设置失败
    oracle 中listagg()函数的用法
    Oracle触发器用法实例详解
    oracle创建和删除表分区
    oracle分区表的建立方法(包含已经存在的表要分区)分享
    ajax、axios总结
    css3-动画(animation)
    webstrom 常用快捷键
    补漏洞
  • 原文地址:https://www.cnblogs.com/alloevil/p/6072035.html
Copyright © 2011-2022 走看看