SpringMVC——文件的上传和下载

来源:互联网 发布:pmp网络班还是面授班 编辑:程序博客网 时间:2024/06/06 19:47

文件上传

配置SpringMVC.xml
注:必须创建MultipartFile实例。要不出现500错误

<!-- 配置 MultipartResolver 文件 -->    <bean id="multipartResolver"        class="org.springframework.web.multipart.commons.CommonsMultipartResolver">        <property name="defaultEncoding" value="UTF-8"></property>        <property name="maxUploadSize" value="1024000"></property>      </bean> 

Java 代码;

@RequestMapping("/testFileUpload")    public String testFileUpload(@RequestParam("desc") String desc,             @RequestParam("file") MultipartFile file,HttpSession session)                     throws IOException{        System.out.println("desc: " + desc);        System.out.println("OriginalFilename: " + file.getOriginalFilename());        System.out.println("InputStream: " + file.getInputStream());        String path = session.getServletContext().getRealPath("/file");        System.out.println(path);        File file1 = new File(path, file.getOriginalFilename());        file.transferTo(file1);        return "success";    }

文件下载

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