zoukankan      html  css  js  c++  java
  • springMVC实现文件下载

    springMVC框架提供了文件下载的功能,具体操作如下:

     1、在springMVC.xml文件中配置ByteArray转换器

    <mvc:annotation-driven conversion-service="conversionServiceFactoryBean" >
        <mvc:message-converters>
            <!--把ByteArray加在Json前面-->
            <bean class="org.springframework.http.converter.ByteArrayHttpMessageConverter"/>
            <bean class="org.springframework.http.converter.StringHttpMessageConverter">
                <constructor-arg value="UTF-8" />
            </bean>
            <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
                <property name="supportedMediaTypes">
                    <list>
                        <value>text/html;charset=UTF-8</value>
                    </list>
                </property>
            </bean>
        </mvc:message-converters>
    </mvc:annotation-driven>

    2、定义controller方法

    @RequestMapping("/exportArrangeCourseInfo")
        public ResponseEntity<byte[]> exportArrangeCourseInfo()throws Exception {
            String pathName = "D:\排课信息.xls";
            File file = new File(pathName);
         String fileName = "教师排课信息.xls"; HttpHeaders headers
    = new HttpHeaders(); //下载显示的文件名,解决中文名称乱码问题 String downloadFielName = new String(filename.getBytes("UTF-8"),"iso-8859-1"); //通知浏览器以attachment(下载方式)打开文件 headers.setContentDispositionFormData("attachment", downloadFielName); //application/octet-stream : 二进制流数据(最常见的文件下载)。 headers.setContentType(MediaType.APPLICATION_OCTET_STREAM); return new ResponseEntity<byte[]>(FileUtils.readFileToByteArray(file), headers, HttpStatus.CREATED); }

    3、页面调用下载链接

    window.location.href="exportArrangeCourseInfo.action"

    这样就可以实现一个简单的文件下载功能了。

    参考:

      http://www.iteye.com/topic/1125784

  • 相关阅读:
    Guava学习笔记(4):Ordering犀利的比较器
    Guava学习笔记(3):复写的Object常用方法
    Guava学习笔记(1):Optional优雅的使用null
    [BZOJ1076][SCOI2008]奖励关
    [BZOJ1821][JSOI2010]部落划分
    [BZOJ1041]圆上的整点
    [Luogu2324]八数码难题
    [BZOJ1085][SCOI2005]骑士精神
    [BZOJ3109] [cqoi2013]新数独
    [LnOI2019]长脖子鹿省选模拟赛 东京夏日相会
  • 原文地址:https://www.cnblogs.com/leilong/p/9037725.html
Copyright © 2011-2022 走看看