guyue
8 天以前 a9e958ce3675c4950ceddd3fd6f939cdf0d2bc5a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package com.linghu.config;
 
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.linghu.model.entity.KeywordTask;
import com.linghu.service.KeywordTaskService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
 
import javax.annotation.PostConstruct;
 
@Configuration
public class ShutdownHookConfig {
    @Autowired
    private KeywordTaskService keywordTaskService;
 
    @PostConstruct
    public void registerShutdownHook() {
        Runtime.getRuntime().addShutdownHook(new Thread(() -> {
            System.out.println("JVM关闭钩子:执行最后的操作...");
 
            performFinalOperations();
        }));
    }
 
    private void performFinalOperations() {
        // 关键操作逻辑
        //将关键词任务关系中任务id为null的状态改为false
        LambdaUpdateWrapper<KeywordTask> updateWrapper =  new LambdaUpdateWrapper<>();
        updateWrapper.isNull(KeywordTask::getTask_id).set(KeywordTask::getStatus, "false");
        keywordTaskService.update(updateWrapper);
 
 
    }
}