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  黎明前的守护  阅读(546)  评论(0)    收藏  举报