使用spring做定时任务

4 篇文章 0 订阅
1 篇文章 0 订阅

使用spring的@Scheduled 标签注释在方法上,需要弄明白cron各个参数啥意思才能设置什么时候进行任务调度

如果图个简单,可以在这里设定好需求,自动生成配置

http://cron.qqe2.com/

@Scheduled(cron = "0 0/1 * * * ?") //一分钟运行一次

还需要在配置中找到这个新的未绑定的事务,需要开启扫描包,找到这个类,并加入事物(添加@Transactional),   类上还需要加上

@Transactional

@Component

eclipse兼容贼好,我本地没问题,结果不是服务器就出现空指针异常.找半天才发现配置文件还要开启用事务注解

<tx:annotation-driven transaction-manager="transactionManager"/> 

同时还需要配置schedule的相关,在applicationContext.xml中

    <!--开启任务调度-->
    <task:annotation-driven/>
    <!--配置定时器类-->
    <bean id="taskJob" class="light.mvc.service.sys.impl.TaskJobService"/>

 如果没有配置好schedule,就部署到linux服务器上,可能会报null空指针异常(我是加了druid数据库链接时,没配schedule的xml,然后不管怎么重启tomcat都会有日志打印调了定时器并且一直报异常.困了两三天,因为服务器不能随便重启,重启tomcat又没用)

最后用本地linux系统测出来,schedule绑到了linux进程去了导致的问题,重启了linux服务器后问题解决了

所以,需要在本地都正常了再部署至服务器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值