Facade 层 实现类 (@Service("samePeriodModelImportFacade"))

1、  获取cells 的方法

public Cells getCells(File file){

       Cells cells = null;

       License license = new License();

     InputStream licenseStream = this.getClass().getResourceAsStream("/aspose.lic");

try{

    license.setLicense(licenseStream);

   FileInputStream fr = new FileInputStream(file);
   Workbook wb = new Workbook(fr);
   Worksheet worksheet = wb.getWorksheets().get(0);
   cells = worksheet.getCells();

}catch(Exception e){

  e.printStackTrace();

}

return cells;

}

2、解析excel 的方法

public String analyExcel(File file){

String dis_no=null;

String dis_mp=null;

List<Object[ ]>  insertParamList =new ArrayList<Object[ ]>();

  Cells cells = this.getCells( file);

  for(int i=1;i<cells.getMaxDataRow()+1;i++){         // 获取要数据的最大的行数

   for(int j=0; j<35;j++){        //获取列数   例如35列

      String cellsValue = cells.getRows().get(i).get(j).getStringValue();  // 获取的每一个单元格的数据  返回的是String 类型

    if(j==0){

        dis_no =cellsValue;   //  i=1 j=0

 }

if( j==23){

  dis_mp=cellsValue;   // i =1 j=23

  }

 }

 insertParamList.add(new Object[] {dis_no,dis_mp});

 

}

 

samePeriodModelImportDomainService.insertPspCellModel(insertParamList);

 

return "success";

}

service层实现类@Repository("samePeriodModelImportDomainService")

//批量插入数据库

public void insertPspCellModel(List<Object[]> insertParamList) {

String sql = "insert into psp_model(dis_no,dis_mp) values(?,?)";

this.getJdbcTemplate().batchUpdate(sql, insertCellParamList);

}

aspose.lic

<License>
<Data>
<Products>
<Product>Aspose.Total for Java</Product>
<Product>Aspose.Words for Java</Product>
</Products>
<EditionType>Enterprise</EditionType>
<SubscriptionExpiry>20991231</SubscriptionExpiry>
<LicenseExpiry>20991231</LicenseExpiry>
<SerialNumber>8bfe198c-7f0c-4ef8-8ff0-acc3237bf0d7</SerialNumber>
</Data>
<Signature>sNLLKGMUdF0r8O1kKilWAGdgfs2BvJb/2Xp8p5iuDVfZXmhppo+d0Ran1P9TKdjV4ABwAgKXxJ3jcQTqE/2IRfqwnPf8itN8aFZlV3TJPYeD3yWE7IT55Gz6EijUpC7aKeoohTb4w2fpox58wWoF3SNp6sK6jDfiAUGEHYJ9pjU=</Signature>
</License>

java中解析excel 批量插入数据库的更多相关文章

  1. 多线程查询数据,将结果存入到redis中,最后批量从redis中取数据批量插入数据库中【我】

    多线程查询数据,将结果存入到redis中,最后批量从redis中取数据批量插入数据库中 package com.xxx.xx.reve.service; import java.util.ArrayL ...

  2. SqlBulkCopy将DataTable中的数据批量插入数据库中

    #region 使用SqlBulkCopy将DataTable中的数据批量插入数据库中 /// <summary> /// 注意:DataTable中的列需要与数据库表中的列完全一致.// ...

  3. list转datatable,SqlBulkCopy将DataTable中的数据批量插入数据库

    /// <summary> /// 将泛类型集合List类转换成DataTable /// </summary> /// <param name="list&q ...

  4. PHP如何将多维数组中的数据批量插入数据库?

    PHP将多维数组中的数据批量插入到数据库中,顾名思义,需要用循环来插入. 1.循环insert into 语句,逐渐查询 <?php /* www.qSyz.net */ @mysql_conn ...

  5. Java实现http大文件流读取并批量插入数据库

    1.概述 请求远程大文本,使用流的方式进行返回.需要设置http链接的超时时间 循环插入到List中,使用mybatis-plus批量插入到mysql中 2.需求 两台服务器 大文件放到其中一台服务器 ...

  6. Java MySql 批量插入数据库addBatch

    //addBatch批量插入数据库 public static void insertCommentToMySql(Set<String> commentList) { Iterator& ...

  7. 【MySql】Java 批量插入数据库addBatch

    //addBatch批量插入数据库 public static void insertCommentToMySql(Set<String> commentList) { Iterator& ...

  8. 将Excle中的数据批量导入数据库

    namespace 将Excle中的数据批量导入数据库{    class Program    {        static void Main(string[] args)        { S ...

  9. sql server 使用SqlBulkCopy批量插入数据库

    sql server sqlbulkcopy 批量数据插入数据库使用的是System.Data.SqlClient中的 SqlBulkCopy批量数据插入数据库 sql server 使用SqlBul ...

随机推荐

  1. python定时器

    1.定时器用法 [1]需要注意的就是创建定时器后,会创建一个线程,程序退出之前需要调用cancel()函数关闭定时器,否则程序退不出. # -*- coding: utf-8 -*- import o ...

  2. LeetCode 789. Escape The Ghosts

    题目链接:https://leetcode.com/problems/escape-the-ghosts/description/ You are playing a simplified Pacma ...

  3. oracle自治事务(PRAGMA AUTONOMOUS_TRANSACTION)

    这段时间遇到一个问题,程序里明明插入了一条记录,但在后边的一段Procedure中却查不到刚刚插入的记录,最后发现这个Procedure的定义中加入了PRAGMA AUTONOMOUS_TRANSAC ...

  4. FTP学习笔记

    FTP有两个连接方式 1.控制连接 2.数据连接 控制链接 标准端口为21  用于数据传输中的控制 数据连接 标准端口20  用于数据传输中的上传 下载数据 数据传输的连接方式,主动连接 被动连接. ...

  5. Python2中生成时间戳(Epoch,或Timestamp)的常见误区

    在Python2中datetime对象没有timestamp方法,不能很方便的生成epoch,现有方法没有处理很容易导致错误.关于Epoch可以参见时区与Epoch 0 Python中生成Epoch ...

  6. org.apache.catalina.LifecycleException项目启动报错

    严重: A child container failed during startjava.util.concurrent.ExecutionException: org.apache.catalin ...

  7. Postman A请求的返回值作为B请求的入参( 之‘’token‘’ ,用代码设置全局变量)

    问题: 登陆接口获取token,其他接口访问时需携带token 方案: 在登陆接口访问后设置Postman的全局变量(Globals),例如设置环境变量名:token2,值(实时的不用自己手动设置的) ...

  8. java 日志脱敏框架 sensitive-新版本0.0.2-深度拷贝,属性为对象和集合的支持

    项目介绍 日志脱敏是常见的安全需求.普通的基于工具类方法的方式,对代码的入侵性太强.编写起来又特别麻烦. 本项目提供基于注解的方式,并且内置了常见的脱敏方式,便于开发. 用户也可以基于自己的实际需要, ...

  9. 自定义Windows右击菜单调用Winform程序

    U9_Git中ignore文件处理 背景 U9代码中有许多自动生成的文件,不需要上传Git必须BE Entity中的.target文件 .bak 文件 Enum.cs结尾的文件,还有许多 extand ...

  10. HTML5+CSS3(3)

    一.CSS3新增属性用法整理 1.box-shadow(阴影效果) 2.border-color(为边框设置多种颜色) 3.border-image(图片边框) 4.text-shadow(文本阴影) ...