Java定时导入文件代码 java定时导入文件代码是什么

编写一个java定时器 每隔5秒钟向数据库表中添加一条数据 求助应该咋写啊 求具体代码

import java.util.Timer;

网站建设哪家好,找创新互联!专注于网页设计、网站建设、微信开发、小程序定制开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了潮南免费建站欢迎大家使用!

import java.util.TimerTask;

public class Test extends TimerTask {

public static void main(String[] args) {

Timer timer = new Timer();

Test t=new Test();

//程序运行后立刻执行任务,每隔1000ms执行一次

timer.schedule(t, 0, 1000);

}

@Override

public void run() {

System.out.println("在此处调用插入数据库的方法");

}

}

JAVA导入txt、CSV的例子

导入文件若为二进制格式的csv或xls文件需要用jxl.jar包来解析,若文件为文本格式逗号分隔的csv文件则需要用opencsv.jar包来解析。下面为导入两种格式文件的代码示例:1. 导入文本格式逗号分隔的csv文件Java代码 import au.com.bytecode.opencsv.CSVReader; import au.com.bytecode.opencsv.CSVReader; Java代码 public void importCsvFile() { CSVReader csvReader = null; try { csvReader = new CSVReader(new FileReader(importFile),',');//importFile为要导入的文本格式逗号分隔的csv文件,提供getXX/setXX方法 if(csvReader != null){ //first row is title, so past csvReader.readNext(); String[] csvRow = null;//row while ((csvRow = csvReader.readNext()) != null){ for (int i =0; icsvRow.length; i++){ String temp = csvRow[i]; switch (i) { case 0: if(StringUtils.isNotEmpty(temp)){ linkman.setLinkmanName(temp); } break; case 1: if(StringUtils.isNotEmpty(temp)){ linkman.setLinkmanEmail(temp); } break; default: break; } } //保存linkman到数据库 if(linkman.getLinkmanName() != null linkman.getLinkmanEmail() != null){ EmailLinkmanAPI.insertLinkman(linkman); } } } } catch (Exception e) { e.printStackTrace(); } } public void importCsvFile() { CSVReader csvReader = null; try { csvReader = new CSVReader(new FileReader(importFile),',');//importFile为要导入的文本格式逗号分隔的csv文件,提供getXX/setXX方法 if(csvReader != null){ //first row is title, so past csvReader.readNext(); String[] csvRow = null;//row while ((csvRow = csvReader.readNext()) != null){ for (int i =0; icsvRow.length; i++){ String temp = csvRow[i]; switch (i) { case 0: if(StringUtils.isNotEmpty(temp)){ linkman.setLinkmanName(temp); } break; case 1: if(StringUtils.isNotEmpty(temp)){ linkman.setLinkmanEmail(temp); } break; default: break; } } //保存linkman到数据库 if(linkman.getLinkmanName() != null linkman.getLinkmanEmail() != null){ EmailLinkmanAPI.insertLinkman(linkman); } } } } catch (Exception e) { e.printStackTrace(); } } 2. 二进制格式的csv或xls文件Java代码 import jxl.Sheet; import jxl.Workbook; import jxl.Sheet; import jxl.Workbook; Java代码 public void importXlsFile() { Workbook book = null; try { book = Workbook.getWorkbook(importFile);//importFile为要导入的xls文件,或二进制的csv文件,提供getXX/setXX方法 } catch (Exception e) { e.printStackTrace(); } if(book != null){ int sheetNo = book.getNumberOfSheets(); for(int i = 0; i sheetNo; i++){ Sheet sheet=book.getSheet(i); int rowNum = sheet.getRows(); int colNum = sheet.getColumns(); //first row is title, so past for(int r = 1; r rowNum; r++){//行 for(int c = 0; c colNum;c++){//列 String temp = sheet.getCell(c,r).getContents(); switch (c) { case 0: if(StringUtils.isNotEmpty(temp)){ linkman.setLinkmanName(temp); } break; case 1: if(StringUtils.isNotEmpty(temp)){ linkman.setLinkmanEmail(temp); } break; default: break; } } //保存linkman到数据库 if(linkman.getLinkmanName() != null linkman.getLinkmanEmail() != null){ EmailLinkmanAPI.insertLinkman(linkman); } } } } }

java 每天定时读取文件

import java.text.SimpleDateFormat;

import java.util.Calendar;

import java.util.Timer;

import java.util.TimerTask;

public class TimerDemo {

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

//得到时间类

Calendar date = Calendar.getInstance();

//设置时间为 xx-xx-xx 00:00:00

date.set(date.get(Calendar.YEAR), date.get(Calendar.MONTH), date.get(Calendar.DATE), 0, 0, 0);

//一天的毫秒数

long daySpan = 24 * 60 * 60 * 1000;

//得到定时器实例

Timer t = new Timer();

//使用匿名内方式进行方法覆盖

t.schedule(new TimerTask() {

public void run() {

//run中填写定时器主要执行的代码块

System.out.println("定时器执行..");

//算了,读取文件我也加上吧

//你没说是文本还是文件,我都用字节流了。

FileInputStream fis = new FileInputStream("D:\\a.txt");

byte[] b = new byte[1024];

int len = 0;

while((len=fis.read(b))!=-1){

//读取输出呀呀呀呀......

System.out.println(new String(b,0,len));

}

}

}, date.getTime(), daySpan); //daySpan是一天的毫秒数,也是执行间隔

};

}

//以上是每天00:00:00执行

java怎么实现每天定时读取文件,然后在写到数据库中呢

不是java定时读取,而是系统调度

比如你写了一个java程序,这个程序是读取文件,写到数据库中。那么这个程序怎么才能定时启动。是操作系统调度的问题了。不是java的问题。所以要用操作系统的调度。

如果在win服务器下,可以下一个cmd文件。文件中调用java程序,然后将cmd设置成每天几点执行

如果是linxu或者unix下,则使用crontab调度。

当然,如果你非要用java程序来调度。那么这个程序肯定要常驻内存,并且进行睡眠。这种方式没有意义。


文章标题:Java定时导入文件代码 java定时导入文件代码是什么
转载来源:http://bzwzjz.com/article/hhiisc.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 成都网站建设 品牌网站建设 手机网站建设 LED网站设计方案 网站制作 重庆电商网站建设 成都网站建设 成都网站设计公司 成都网站制作 成都网站设计 成都网站制作 成都网站建设 企业网站设计 网站制作 成都网站设计 专业网站设计 成都网站设计 网站建设公司 企业网站制作 自适应网站设计 古蔺网站建设 成都网站建设