JXL操作excel总结(3)

2024-03-23 12:48
文章标签 excel 总结 操作 jxl

本文主要是介绍JXL操作excel总结(3),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

/**

       * 清空数据库,为下次倒入数据库做准备

       */

       public void delAllData(){

              Connection conn=null;

              PreparedStatement ps=null;

              try{

                     Class.forName("com.mysql.jdbc.Driver");

                     conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/test?user=root&password=mingyuan_1986");

                     ps=conn.prepareStatement("delete from excel");

                     ps.execute();

              }catch(ClassNotFoundException e){

                     System.out.println("加载数据库驱动失败!");

              }catch(SQLException e){

                     e.printStackTrace();

                     System.out.println("删除失败");

              }finally{

                     try {

                            ps.close();

                            conn.close();

                     } catch (SQLException e) {

                            // TODO Auto-generated catch block

                            e.printStackTrace();

                            System.out.println("关闭连接失败!");

                     }

                    

              }

       }

       /**

       * @param args

       * @throws Exception

       */

       public static void main(String[] args) throws Exception {

              // TODO Auto-generated method stub

              ReadAndWriteExcel rwe = new ReadAndWriteExcel();

              rwe.readExcel();//读取excel数据,并将其写入到数据库中

              rwe.writeExcel();//读取数据库中的数据,并将其写入到excel中

              rwe.delAllData();//删除数据库中的所有数据,为下次录入做准备

       }

}

1.       遇到的问题

a)         读取excel文件失败:不可识别的OLE流

解决方案是将原来的数据拷贝到一个新建的excel文件中即可,问题产生的原因网上有两种说法:1.excel版本和jxl不兼容;2.excel有宏或者什么东西限制了jxl读取。

b)        读取数据库速度过慢

问题产生的原因是表中数据量过大(1205191条之多)。解决办法是对每个字段均建立索引:

Create index idx_time on excel(time);

Create index idx_location on excel(location);

Create index ind_data on excel(data);

这样以来从过去执行检索需要11秒时间降低到现在的3.8秒,执行速度大大加快。

c)         Jvm内存用尽

在执行填充excel的时候产生jvm耗尽的情况,最开始是想找jxl中的解决方案,比如说是分批写入,可是jxl不提供这样的方法。于是尝试修改了jvm的启动参数,如图三所示。


这篇关于JXL操作excel总结(3)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/838359

相关文章

MySQL游标和触发器的操作流程

《MySQL游标和触发器的操作流程》本文介绍了MySQL中的游标和触发器的使用方法,游标可以对查询结果集进行逐行处理,而触发器则可以在数据表发生更改时自动执行预定义的操作,感兴趣的朋友跟随小编一起看看... 目录游标游标的操作流程1. 定义游标2.打开游标3.利用游标检索数据4.关闭游标例题触发器触发器的基

在C#中分离饼图的某个区域的操作指南

《在C#中分离饼图的某个区域的操作指南》在处理Excel饼图时,我们可能需要将饼图的各个部分分离出来,以使它们更加醒目,Spire.XLS提供了Series.DataFormat.Percent属性,... 目录引言如何设置饼图各分片之间分离宽度的代码示例:从整个饼图中分离单个分片的代码示例:引言在处理

Python列表的创建与删除的操作指南

《Python列表的创建与删除的操作指南》列表(list)是Python中最常用、最灵活的内置数据结构之一,它支持动态扩容、混合类型、嵌套结构,几乎无处不在,但你真的会创建和删除列表吗,本文给大家介绍... 目录一、前言二、列表的创建方式1. 字面量语法(最常用)2. 使用list()构造器3. 列表推导式

C#借助Spire.XLS for .NET实现在Excel中添加文档属性

《C#借助Spire.XLSfor.NET实现在Excel中添加文档属性》在日常的数据处理和项目管理中,Excel文档扮演着举足轻重的角色,本文将深入探讨如何在C#中借助强大的第三方库Spire.... 目录为什么需要程序化添加Excel文档属性使用Spire.XLS for .NET库实现文档属性管理Sp

Go异常处理、泛型和文件操作实例代码

《Go异常处理、泛型和文件操作实例代码》Go语言的异常处理机制与传统的面向对象语言(如Java、C#)所使用的try-catch结构有所不同,它采用了自己独特的设计理念和方法,:本文主要介绍Go异... 目录一:异常处理常见的异常处理向上抛中断程序恢复程序二:泛型泛型函数泛型结构体泛型切片泛型 map三:文

C#实现将Excel工作表拆分为多个窗格

《C#实现将Excel工作表拆分为多个窗格》在日常工作中,我们经常需要处理包含大量数据的Excel文件,本文将深入探讨如何在C#中利用强大的Spire.XLSfor.NET自动化实现Excel工作表的... 目录为什么需要拆分 Excel 窗格借助 Spire.XLS for .NET 实现冻结窗格(Fro

C# List.Sort四种重载总结

《C#List.Sort四种重载总结》本文详细分析了C#中List.Sort()方法的四种重载形式及其实现原理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友... 目录1. Sort方法的四种重载2. 具体使用- List.Sort();- IComparable

SpringBoot项目整合Netty启动失败的常见错误总结

《SpringBoot项目整合Netty启动失败的常见错误总结》本文总结了SpringBoot集成Netty时常见的8类问题及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录一、端口冲突问题1. Tomcat与Netty端口冲突二、主线程被阻塞问题1. Netty启动阻

SpringBoot整合Kafka启动失败的常见错误问题总结(推荐)

《SpringBoot整合Kafka启动失败的常见错误问题总结(推荐)》本文总结了SpringBoot项目整合Kafka启动失败的常见错误,包括Kafka服务器连接问题、序列化配置错误、依赖配置问题、... 目录一、Kafka服务器连接问题1. Kafka服务器无法连接2. 开发环境与生产环境网络不通二、序

MySQL基本表查询操作汇总之单表查询+多表操作大全

《MySQL基本表查询操作汇总之单表查询+多表操作大全》本文全面介绍了MySQL单表查询与多表操作的关键技术,包括基本语法、高级查询、表别名使用、多表连接及子查询等,并提供了丰富的实例,感兴趣的朋友跟... 目录一、单表查询整合(一)通用模版展示(二)举例说明(三)注意事项(四)Mapper简单举例简单查询