Spring-MVC:计划作业未执行
Spring-MVC : Scheduled job did not execute
我正在开发一个 Spring-MVC 应用程序,我在其中使用调度来删除不需要的额外内容。不幸的是,我的预定方法没有触发。谁能告诉我我哪里做错了。
这是代码:
@Repository
@Transactional
@EnableScheduling
public class NotificationDAOImpl implements NotificationDAO{
@Override
@Scheduled(cron = "0 3 3 * * ?")
public void deleteNotificationsAutoMagically(){
session=this.sessionFactory.getCurrentSession();
long now = System.currentTimeMillis();
long nowMinus1Week = now - (1000 * 60 * 60 * 24 * 3);
Timestamp nowMinus1WeekAsTimeStamp = new Timestamp(nowMinus1Week);
Query query = session.createQuery("delete from NoteLock as nl where nl.timestamp < :limit and nl.read=:true");
query.setParameter("limit", nowMinus1WeekAsTimeStamp);
query.executeUpdate();
session.flush();
}
}
我知道参数名称是 1 周的,但我将在 3 天内删除它。我只是复制了代码.. :D 任何帮助都会很好。谢谢
我正在开发一个 Spring-MVC 应用程序,我在其中使用调度来删除不需要的额外内容。不幸的是,我的预定方法没有触发。谁能告诉我我哪里做错了。
这是代码:
@Repository
@Transactional
@EnableScheduling
public class NotificationDAOImpl implements NotificationDAO{
@Override
@Scheduled(cron = "0 3 3 * * ?")
public void deleteNotificationsAutoMagically(){
session=this.sessionFactory.getCurrentSession();
long now = System.currentTimeMillis();
long nowMinus1Week = now - (1000 * 60 * 60 * 24 * 3);
Timestamp nowMinus1WeekAsTimeStamp = new Timestamp(nowMinus1Week);
Query query = session.createQuery("delete from NoteLock as nl where nl.timestamp < :limit and nl.read=:true");
query.setParameter("limit", nowMinus1WeekAsTimeStamp);
query.executeUpdate();
session.flush();
}
}
我知道参数名称是 1 周的,但我将在 3 天内删除它。我只是复制了代码.. :D 任何帮助都会很好。谢谢