JAVA TIMER定时器
备注:类实现ServletContextListener,在web.xml配置,之后服务启动该定时器类自动加载
package com.leadlt.common.util;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Calendar;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class TestTimer implements ServletContextListener{
public static void doCon() throws Exception, Exception, Exception {
Connection con = null;
Statement st = null;
ResultSet rs = null;
// 获得Oracle驱动的实例
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
// 获得连接对象(提供:地址,用户名,密码)
con = DriverManager.getConnection(
"jdbc:oracle:thin:@192.168.1.121:1521:orcl", "parking",
"parking");
if (!con.isClosed())
System.out.println("Successfully connected ");
else
System.out.println("failed connected");
// 建立一个Statement,数据库对象
st = con.createStatement();
// 运行SQL查询语句
//rs = st.executeQuery("select * from DAY_TRAFFIC");
//rs=st.executeQuery("insert into DAY_TRAFFIC (parkno,time1,time2,ID,types,day_time) VALUES (parkno,0,0,DAY_TRAFFIC_SEQ.nextval,'year',sysdate)");
rs=st.executeQuery("insert into DAY_TRAFFIC (parkno,ID) VALUES ('0',7)");
System.out.println(rs);
// 读取结果集
while (rs.next()) {
System.out.println("parkno:" + rs.getString(1));
/*
* System.out.println("time1:" + rs.getInt(2));
* System.out.println("time2:" + rs.getInt(3));
* System.out.println("time3:" + rs.getInt(4));
* System.out.println("time4:" + rs.getInt(5));
* System.out.println("time5:" + rs.getInt(6));
* System.out.println("time6:" + rs.getInt(7));
* System.out.println("time7:" + rs.getInt(8));
* System.out.println("time8:" + rs.getInt(9));
* System.out.println("time9:" + rs.getInt(10));
* System.out.println("time10:" + rs.getInt(11));
* System.out.println("time11:" + rs.getInt(12));
* System.out.println("time12:" + rs.getInt(13));
* System.out.println("day_time:" + rs.getDate(26));
* System.out.println("ID:" + rs.getInt(27));
* System.out.println("types:" + rs.getString(28));
*/
}
// 关闭链接
con.close();
// run();
}
static int count = 0;
public static void showTimer() {
TimerTask task = new TimerTask() {
@Override
public void run() {
++count;
System.out.println("时间=" + new Date() + " 执行了" + count + "次"); // 1次
try {
doCon();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
};
// 设置执行时间
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int day = calendar.get(Calendar.DAY_OF_MONTH);// 每天
// 定制每天的12:15:15执行,
calendar.set(year, month, day, 12, 15, 15);
Date date = calendar.getTime();
Timer timer = new Timer();
System.out.println(date);
int period = 2 * 1000;
// 每天的date时刻执行task,每隔2秒重复执行
timer.schedule(task, date, period);
// 每天的date时刻执行task, 仅执行一次
// timer.schedule(task, date);
}
/*public static void main(String[] args) {
showTimer();
}*/
public void contextDestroyed(ServletContextEvent arg0) {
// TODO Auto-generated method stub
}
public void contextInitialized(ServletContextEvent arg0) {
// TODO Auto-generated method stub
showTimer();
}
}
JAVA TIMER定时器的更多相关文章
- JAVA Timer定时器使用方法(二)
JAVA Timer 定时器测试 MyTask.java:package com.timer; import java.text.SimpleDateFormat;import java.util. ...
- JAVA Timer定时器使用方法
JAVA Timer 定时器测试 MyTask.java:package com.timer; import java.text.SimpleDateFormat;import java.util. ...
- java Timer定时器管理类
1.java timer类,定时器类.启动执行定时任务方法是timer.schedule(new RemindTask(), seconds*1000);俩参数分别是TimerTask子类,具体执行定 ...
- Java Timer定时器时,每次重复执行了两次任务的解决方案
web.xml监听配置 com.numenzq.mc.service.impl.TimerListener TimerListener类 public class TimerListener impl ...
- Java Timer 定时器的使用
设置定时任务很简单,用Timer类就搞定了. 一.延时执行首先,我们定义一个类,给它取个名字叫TimeTask,我们的定时任务,就在这个类的main函数里执行. 代码如下:package test;i ...
- JAVA Timer定时器使用方法(一)
设置定时任务很简单,用Timer类就搞定了. 一.延时执行首先,我们定义一个类,给它取个名字叫TimeTask,我们的定时任务,就在这个类的main函数里执行. 代码如下:package test;i ...
- Java Timer定时器原理
做项目很多时候会用到定时任务,比如在深夜,流量较小的时候,做一些统计工作.早上定时发送邮件,更新数据库等.这里可以用Java的Timer或线程池实现.Timer可以实现,不过Timer存在一些问题.他 ...
- Java进阶(十八)Java实现定时器(Timer)
Java实现定时器(Timer) 绪 在应用开发中,经常需要一些周期性的操作,比如每5分钟执行某一操作等.对于这样的操作最方便.高效的实现方式就是使用java.util.Timer工具类.java.u ...
- java之定时器任务Timer用法
在项目开发中,经常会遇到需要实现一些定时操作的任务,写过很多遍了,然而每次写的时候,总是会对一些细节有所遗忘,后来想想可能是没有总结的缘故,所以今天小编就打算总结一下可能会被遗忘的小点: 1. pub ...
随机推荐
- HDU 1102 Constructing Roads
Constructing Roads Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Other ...
- HDU 4406 最大费用最大流
题意:现有m门课程需要复习,已知每门课程的基础分和学分,共有n天可以复习,每天分为k个时间段,每个时间段可以复习一门课程,并使这门课程的分数加一,问在不挂科的情况下最高的绩点. 思路:(没做过费用流的 ...
- 深入理解maven及应用--转
(一):生命周期和插件 在项目里用了快一年的maven了,最近突然发现maven项目在eclipse中build时非常慢,因为经常用clean install命令来build项目,也没有管那么多,但最 ...
- 通过JDBC进行简单的增删改查
通过JDBC进行简单的增删改查(以MySQL为例) 目录 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JDBC基本操 ...
- MongoDB学习(一)简介
本篇主要简单介绍一下MongoDB数据库. 一.简介 mongoDB是一个开源的,基于分布式的,面向文档存储的非关系型数据库.是非关系型数据库当中功能最丰富.最像关系数据库的. mongoDB由C++ ...
- java 15 -3 集合的遍历的练习
练习:用集合存储5个动物对象,并把动物对象进行遍历. 分析: A:创建动物类 a:无参构造方法 b:有参构造方法 c:get.set方法 B:创建集合对象 a:Collection animal = ...
- Dvwa writeup
DVWA(Dam vulnerable Web Application)是使用PHP+Mysql编写的一套用于常规漏洞教学和漏洞挖掘的一个测试学习程序,在此程序中包含了常见的web方面的漏洞,如命令行 ...
- 【WPF】WPF通过RelativeSource绑定父控件的属性
1.后台代码实现绑定父控件的属性 RelativeSource rs = new RelativeSource(RelativeSourceMode.FindAncestor); //设定为离自己控件 ...
- C语言 文件操作8--fputs()和fgets()
//fputs()和fgets() #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> # ...
- SRTM数据介绍与说明
一.SRTM 的背景引言 美国利用航天飞机搭载成像雷达对地进行观测始于20 世纪80 年代初.1982 年11 月和1985 年10 月, 美国分别进行了两次称为S IR2A 与S IR2B 的航天飞 ...