Java 定时任务 (ssm注解方式)

1. 配置文件.xml

2. Java定时任务类

3. 部署到Linux服务器,定时任务出现的问题

  1. 在springMVC.xml配置文件中,添加定时任务配置

    xmlns:task="http://www.springframework.org/schema/task"

    http://www.springframework.org/schema/task
    http://www.springframework.org/schema/task/spring-task-3.2.xsd"

    <task:annotation-driven scheduler="myScheduler"/>
    <task:scheduler id="myScheduler" pool-size="5"/>

  2. Java定时任务类

    //定时任务
    @Controller
    public class TasksTest {

    //每5分钟执行一次
    @Scheduled(cron="0 */5 * * * ?")
    public void FiveTimeMinute (){
    System.out.println("aaaaaaaaaaaaaaaaaa");
    }

    }

  3. 部署到Linux服务器,定时任务出现的问题

    项目部署到Linux服务器上后,定时任务可能会出现重复执行的问题
    如果有数据库插入操作,则可能会有重复数据,影响业务.

    我也遇到了重复执行的问题.
    网上搜了一堆案例.有的说是没有配置好.
    也有的说是Tomcat配置文件问题,要修改一下.

    我最终解决的方法是:修改tomcat/conf/server.xml
    将appBase设置为空;docBase设置项目全路径;
    appBase="";docBase=项目全路径

启动服务后,观察定时任务,已解决重复执行问题.数据库插入数据时,不在有重复.

posted on 2021-01-08 17:40  黎明前的守护  阅读(572)  评论(0)    收藏  举报