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);
|
|
|
}
|
}
|