日期:2014-05-18  浏览次数:20679 次

跪求高手,怎么实现定时的往数据库里存储数据啊??
我做项目时,经理叫我实现如下功能:
定时的往数据库里存储数据,然后可以实现随时的对数据库进行访问,我就不明白应该怎么实现     “定时”,大家帮忙啊,??????????????

------解决方案--------------------
UP我都想知

------解决方案--------------------
定义一个线程并且执行一个死的循环,当然循环中可以按照规定时间执行数据库操作。
------解决方案--------------------
就是 用线程就能搞定
------解决方案--------------------
自己写个线程或者使用第三方的作业调度包,如:Quartz等
------解决方案--------------------
LZ定时存数据 存什么数据 在什么地方获得的数据 您也不写清楚
------解决方案--------------------
我的定时类,可以参考
public class MyTimer2 {
static Logger logger = Logger.getLogger(MyTimer2.class);
static Timer timer2 = new Timer();
public void runTask2(){

logger.info( "定时接收任务开始,每2分钟执行一次 ");
InitParameter.isReceive = true;
timer2.schedule(new MyTask2(),5000,InitParameter.RECEIVE_SLEEPTIME);/*执行计划*/
}
}

在servlet中初始化该类就可以了
------解决方案--------------------


import javax.servlet.ServletContextListener;
import javax.servlet.ServletContextEvent;
import java.util.Timer;

/**
* <p> Description: 设定后台任务定时执行时间表 </p>
*/
public class TaskSchedule implements ServletContextListener {
private static int iMin = 1; //任务定时执行的周期
public TaskSchedule() {
}
private Timer timer = null;
public void contextInitialized(ServletContextEvent event) {
timer = new Timer(true);
timer.schedule(new DTDataInsert(), 0, iMin * 60 * 1000);//定时执行一次
}

public void contextDestroyed(ServletContextEvent event) {
timer.cancel();
}
}

DTDataInsert类自己写吧,参照2楼的建议,不要偷懒!