zoukankan      html  css  js  c++  java
  • SpringMVC学习笔记(六)

    一.SpringMVC文件的上传

        1.1.需要导入两个jar包

       1.2在SpringMVC配置文件中加入

      

    <!-- upload settings -->
    <bean id="multipartResolver"  class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        <property name="maxUploadSize" value="102400000">
        <property name="defaultEncoding" value="utf-8"> 
    </property>
    </bean>

    注意:bean的id必须有而且必须叫multipartResolver

    1.3方法代码

       

    @RequestMapping(value="/upload",method=RequestMethod.POST)
    public String upload(HttpServletRequest req) throws Exception{
        MultipartHttpServletRequest mreq = (MultipartHttpServletRequest)req;
        MultipartFile file = mreq.getFile("file");
        String fileName = file.getOriginalFilename();
        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");        
        FileOutputStream fos = new FileOutputStream(req.getSession().getServletContext().getRealPath("/")+
                "upload/"+sdf.format(new Date())+fileName.substring(fileName.lastIndexOf('.')));
        fos.write(file.getBytes());
        fos.flush();
        fos.close();
         
        return "hello";
    }
    

    二. SpringMVC文件的下载.  

       2.1 准备下载源

      在WebContent下新建files目录,放入aaa.txt,作为下载源

      2.2 在index.jsp添加超链接作为下载入口

       

    <a href="testResponseEntity" id="testJson">testResponseEntity</a><br/>

    2.3 在handler SpringMVCTest中添加接口

    @RequestMapping("testResponseEntity")
    public ResponseEntity<byte[]> testResponseEntity(HttpSession session) throws IOException{
        byte[] body = null;
        ServletContext servletContext = session.getServletContext();
        InputStream in = servletContext.getResourceAsStream("/files/aaa.txt");
        body = new byte[in.available()];
        in.read(body);
             
        HttpHeaders headers = new HttpHeaders();
        headers.add("Content-Disposition", "attachment;filename=aaa.txt");
        HttpStatus statusCode = HttpStatus.OK;
        ResponseEntity<byte[]> response = new ResponseEntity<>(body, headers, statusCode);
        return response;
    }

      

  • 相关阅读:
    Invoice Helper
    Product Helper
    Order Helper
    Case Helper
    Quote Helper
    C# 工厂模式示例
    若今生长剑浣花,生死无涯
    古代美到窒息的谎言
    C#解决微信支付Exception has been thrown by the target of an invocation(调用的目标发生了异常)的问题
    文能提笔控萝莉,转载自网上
  • 原文地址:https://www.cnblogs.com/tony-hyn/p/6225710.html
Copyright © 2011-2022 走看看