博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
智销功能_导入导出
阅读量:7209 次
发布时间:2019-06-29

本文共 2681 字,大约阅读时间需要 8 分钟。

最常用的是下面两种:

jxl:只能对Excel进行操作,属于比较老的框架。

POI:是apache的项目,可对msword,Excel,PPT进行操作

 

需要的jar

 

<!-- poi支持的jar-->

<dependency>
  <groupId>org.apache.poi</groupId>
  <artifactId>poi</artifactId>
  <version>3.11</version>
</dependency>
<dependency>
  <groupId>org.apache.poi</groupId>
  <artifactId>poi-ooxml</artifactId>
  <version>3.11</version>
</dependency>

 读取Excel

excel文件做测试(99乘法表)

/**

 * 读取我们使用相应的方案
 * @throws Exception
 */
@Test
public void readExcel() throws Exception{
    File file = new File("employee-3.xlsx");
    FileInputStream fis = new FileInputStream(file);
    //1.读取一个Excel文件(内存中)
    Workbook wb = new XSSFWorkbook(fis);
    //2.拿到第个sheet
    Sheet sheet = wb.getSheetAt(0);
    //3.拿到wb中的行(不要拿头部)
    int lastRowNum = sheet.getLastRowNum();
    for (int i = 1; i <= lastRowNum; i++) {
        Row row = sheet.getRow(i);
        //4.拿到每一列(格子)
        short lastCellNum = row.getLastCellNum();
        for (int j = 0; j < lastCellNum; j++) {
            Cell cell = row.getCell(j);
            System.out.print(cell.getStringCellValue()+" ");
        }
        System.out.println();
    }
}

导出

jsp添加导出按钮

<a href="路径 "  class="easyui-linkbutton" iconCls="icon-redo" plain="true">导出</a>

js加上导出方法

var itsource={

    

    //导出数据

    export:function(){
        $('#searchForm').submit();
    }
}

导入

 

applicationContext-mvc.xml配置

 

<!-- 上传配置 -->

<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
    <property name="maxUploadSize">
        <value>1048576</value>
    </property>
</bean>

准备上传的页面

 

%@ page contentType="text/html;charset=UTF-8" language="java" %>

<html>
<head>
    <title>Title</title>
    <%@include file="/WEB-INF/views/head.jsp" %>
</head>
<body>
<span style="color: red">${count}</span>
<!-- 上传请配置enctype -->
<form action="/import/xlsx" method="post" enctype="multipart/form-data">
    <%--<input type="file" name="xlsxFile" /> --%>
    <input class="easyui-filebox" name="xlsxFile" data-options="prompt:'选择一个文件...'" style="width:80%">
        <button class="easyui-linkbutton" type="submit">确定</button>
</form>
</body>
</html>

准备上传的工具方法

 

/**

 * 导入功能:传一个文件的输入流,讲取完成后返回一个相应的数据集合
 * @throws Exception
 */
public static List<String[]>  importExcel(InputStream is) throws Exception{
    //.准备装数据的容器
    List<String[]> list = new ArrayList<>();
    //1.读取一个Excel文件(内存中)
    Workbook wb = new XSSFWorkbook(is);
    //2.拿到第个sheet
    Sheet sheet = wb.getSheetAt(0);
    //3.拿到wb中的行(不要拿头部)
    int lastRowNum = sheet.getLastRowNum();
    for (int i = 1; i <= lastRowNum; i++) {
        Row row = sheet.getRow(i);
        //4.拿到每一列(格子)
        short lastCellNum = row.getLastCellNum();
        //.准备一个String[]装一行数据(有几列就有几条数据)
        String[] data = new String[lastCellNum];
        for (int j = 0; j < lastCellNum; j++) {
            Cell cell = row.getCell(j);
            data[j] = cell.getStringCellValue();
        }
        //.把一行数据写到集合中去
       list.add(data);
    }
    return list;
}

 

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/yh9264426/p/10623147.html

你可能感兴趣的文章
块状链表 codevs 2333弹飞绵羊
查看>>
(九)jsMath
查看>>
CE_现金模组基本概念(概念)
查看>>
饭后一题
查看>>
Zynq-7000 FreeRTOS(一)系统移植配置
查看>>
[笔记][朝花夕拾][Multisim基础电路范例].第一章 RLC电路,第七、八节 米勒定理...
查看>>
免费论文查重
查看>>
【GPRS】GSM和GPRS模块的应用
查看>>
第一章 Docker简介和基本概念
查看>>
java代码-----实现打印三角形
查看>>
python(4) 小程序-异步加载
查看>>
20190327(练手感)
查看>>
modelform动态显示select标签的对象范围
查看>>
Android ---------- 富文本构建
查看>>
leetcode:Count Primes
查看>>
[转] babel的使用
查看>>
CentOS7.0安装与配置Tomcat-7
查看>>
C# SQL数据访问帮助类
查看>>
.net面试(汇总)
查看>>
.NET Entity Framework基本使用方法
查看>>