1、Application启动项上加入@EnableScheduling 实现类上加入@Component 、@Scheduled (cron = "0/10 * * * * ?") 确实能正常的实现定时的操作 ,但是...... 这个操作只是一些简单的输出 ,如果想调取service 与 mapper层的方法 那就悲剧了。
2、那要怎么解决这个问题呢,我经过查询了解到定时任务不受spring的管理,然后自己手写一个spring工具类
如下:
3、这样Application启动项就需要改动一下,让后面能获取到ApplicationContext
如下:
4、这时候就涉及到具体的使用了
如果你想调用servicer层的话
如下:
CarTotalService carTotalService= (CarTotalService )ApplicationContextUtil.getBean("carTotalService ");
或
CarTotalService carTotalService= (CarTotalService )ApplicationContextUtil.getBean(CarTotalService.class);
切记
"carTotalService "这个名称在service实现类里有@Service 标明名称("carTotalService ")
如果你想直接调用mapper层的话
如下:
CarTotalMapper carTotalMapper= (CarTotalMapper)ApplicationContextUtil.getBean(CarTotalMapper.class);
carTotalMapper.方法 就可以了
自己爬坑爬了好久,希望不要有人掉坑了