小编ide*_*des的帖子

石英多次执行后,Java Excel POI停止

我想对此有一些见解.

我有一个程序,可以从数据库读取和写入excel文件.它的执行基于使用Quartz api的计时器,并在每周的每周二触发.问题是,当我通过安排它每小时执行一次作业来测试它时,程序在编写excel文件的过程中几次执行后突然停止.这是我写的excel代码.

try {
        FileInputStream file = new FileInputStream(excelFile);
        POIFSFileSystem myFileSystem = new POIFSFileSystem(file);
        HSSFWorkbook workbook = new HSSFWorkbook(myFileSystem);
        HSSFSheet worksheet = workbook.getSheetAt(0);
        this.cellStyle00 = workbook.createCellStyle();
        HSSFDataFormat df = workbook.createDataFormat();
        this.cellStyle00.setDataFormat(df.getFormat("00"));

for(int i = 0;i<Access.size();i++){
         AccessorMethods SetGet = (AccessorMethods)
                    InstlibAccessor.get(i);

    HSSFRow row = worksheet.createRow(worksheet.getPhysicalNumberOfRows());
    HSSFCell cell = row.createCell(0);

    cell.setCellValue(new Double(SetGet.getOne()));
    cell.setCellStyle(cellStyle00);


  //other set value codes....

}
FileOutputStream fileOut = new FileOutputStream(fileName + ".xls");
workbook.write(fileOut);
 fileOut.flush();
 fileOut.close(); 

 //catch statements follow
 //end
Run Code Online (Sandbox Code Playgroud)

命令行输出和netbeans输出不表示任何错误,如内存不足等等.程序没有结束..它只是,停止..就像jvm正在进行无限循环...更多的光关于这个话题,这是我的程序的简要流程.

  1. 用户执行调度程序
  2. 在所需的时间,调度程序执行程序(调度程序和"程序"是两个不同的程序/ jar文件.调度程序只调用jar)
  3. 该程序首先创建excel文件
  4. 然后读取数据库1.数据库包含80K行
  5. 对于每一行,如果满足某个条件,它将读取数据库2和3
  6. 然后它一次将它存储在一个arraylist对象1000中(我试图避免任何内存问题,所以我按批次存储它)
  7. 然后我批量写,1000一次excel(这是它停止的部分) …

java profiling quartz-scheduler apache-poi

5
推荐指数
1
解决办法
1062
查看次数

什么是"=?" 表示在SQL查询中使用时

我是SQL的新手,我正在重新编写另一个程序员开发的java程序.当我打印他的一个查询select语句时,脚本包含sql语法:

SELECT * from database WHERE id = ?
Run Code Online (Sandbox Code Playgroud)

我只想知道该怎么=?办?我一直在谷歌搜索,我找不到任何相关的答案.

java sql syntax jdbc

4
推荐指数
1
解决办法
146
查看次数

jsch的ChannelSftp中exit和quit有什么区别?

我目前正在用 jsch 开发一个程序,我正在查看 ChannelSftp 类。我只想知道退出和退出方法之间的区别。

Sftp 示例的帮助字符串中,它说"exit - Quit sftp""quit - Quit sftp"

那么,两者之间有什么区别,如何正确使用它们呢?

java sftp jsch

4
推荐指数
1
解决办法
3087
查看次数

关于在java中使用split()的问题

我正在尝试从.txt文件中分割()一行文本和数字.我需要隔离该行的不同部分,以便我可以将其插入数据库表中.这是一个示例行:

051500000711000,051500000711000,equal;
Run Code Online (Sandbox Code Playgroud)

我已经有了这一行的工作代码,它是:

String delimiter = (",|;");
temp = strLine.split(delimiter);
Run Code Online (Sandbox Code Playgroud)

但有时候样本行会是这样的:

052000000711000,,,
Run Code Online (Sandbox Code Playgroud)

看到缺失值?它们丢失了,因为生成此行的其他程序具有空值; 这就是它只返回逗号的原因.

问题是我应该如何处理分隔符,以便它可以读取逗号并将其作为null返回到我的split()数组中.

java split delimiter

0
推荐指数
1
解决办法
407
查看次数

标签 统计

java ×4

apache-poi ×1

delimiter ×1

jdbc ×1

jsch ×1

profiling ×1

quartz-scheduler ×1

sftp ×1

split ×1

sql ×1

syntax ×1