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 updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.isNull(KeywordTask::getTask_id).set(KeywordTask::getStatus, "false"); keywordTaskService.update(updateWrapper); } }