[英]How to check the new record is inserted or not to db in java
我需要检查是否有新记录插入到数据库中。 我正在创建侦听器,以不断延迟地轮询数据库,我需要检查是否插入了新记录或新记录中的表是否插入其中,我想获取该数据,否则无需从表中获取数据。 这是我的侦听器类。
public class GetGpsDataListener implements ServletContextListener {
@Override
public void contextInitialized(ServletContextEvent sce) {
Timer timer = new Timer();
timer.schedule(new MyTimerTask(), 1000, 1000);
}
@Override
public void contextDestroyed(ServletContextEvent sce) {
}
}
这是我的计时器课程。
public class MyTimerTask extends TimerTask {
@Override
public void run() {
System.out.println("Inside run");
// Here I will connect to database to check new record from table..
}
}
如果您的应用程序正在执行所有插入操作,那么我认为我不会轮询数据库以查看是否已插入新记录。 轮询数据库可能会占用大量资源,尤其是在表变大的情况下,通常还意味着您需要在应用程序中保留一些状态,以便查看发生了什么变化。
当您的应用程序执行插入操作时,将可以看到
我只允许执行插入操作的代码与一个单独的类进行通信,该类可以成功插入并且插入记录的ID是什么。 单独的类可以执行所需的任何操作。
如果需要异步完成此操作,则可以考虑将ID放入队列,并允许您的计时器任务读取它们。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.