若依 创建定时任务

SpringCloud:

  1. 在ruoyi-api-system 模块创建一个服务类RemoteVoiceConsumeService
@FeignClient(contextId = "RemoteVoiceConsumeService", value = ServiceNameConstants.SYSTEM_SERVICE)
public interface RemoteVoiceConsumeService {
    /**
     * @return 分析结果
     */
    @GetMapping(value = "/voiceConsume/voiceConsumeData ")
    public void voiceConsumeData();

}

1.1SYSTEM_SERVICE为所在服务的服务名称
在这里插入图片描述
1.2 /voiceConsume/voiceConsumeData 为接口在Controller 中的正常请求地址,且需确保此接口已在白名单中,无需token即可访问

  1. 在ruoyi-module-job 模块中,在RyTask 中添加此方法

/**
 * 定时任务调度测试
 *
 * @author ruoyi
 */
@Component("ryTask")
public class RyTask
{
    protected Logger logger = LoggerFactory.getLogger(getClass());
    @Autowired
    private RemoteVoiceConsumeService RemoteVoiceConsumeService;

 
    public void copyVoiceConsumeData() {
        logger.info("【开始】-------------------------");
        RemoteVoiceConsumeService.voiceConsumeData();
    }

}

3.添加此定时任务,用合适的cron表达式

在这里插入图片描述

Vue 前后端分离:
参考若依文档:
在这里插入图片描述

1.确认实现类有@Service注解在这里插入图片描述
实现一个此类中的定时任务测试方法
在这里插入图片描述
添加定时任务
注意:注解如果没有指定bean的名字,默认为小写开头的类名。
否则运行会显示找不到这个Bean的错误。
这里RiskChecklistAnswerServiceImpl 要写成 riskChecklistAnswerServiceImpl
在这里插入图片描述

运行结果:
在这里插入图片描述

在若依框架中添加自定义定时任务,主要依赖于其集成的 Quartz 调度框架。通过 Quartz,可以实现任务的动态管理,包括任务的创建、修改、删除和调度。以下是如何在若依框架中添加自定义定时任务的流程: ### 1. 添加任务信息 在若依框架的管理台中,可以通过界面配置新增定时任务。需要填写任务的基本信息,例如任务名称、任务组名、执行的类名、执行方法、cron 表达式等。这些信息将用于 Quartz 创建和调度任务。 ### 2. 编写任务执行类 在若依框架中,需要编写一个任务执行类,该类需要实现 `org.quartz.Job` 接口,并重写 `execute` 方法。在 `execute` 方法中,编写具体的任务逻辑。 例如: ```java import org.quartz.Job; import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; public class CustomTaskJob implements Job { @Override public void execute(JobExecutionContext context) throws JobExecutionException { // 在这里编写任务的具体逻辑 System.out.println("执行自定义定时任务"); } } ``` ### 3. 配置任务调度 在若依框架中,任务的调度信息通常存储在数据库中,支持动态修改。Quartz 提供了 `JobStore` 用于存储任务信息,可以选择 `RAMJobStore`(内存存储)或 `JDBCJobStore`(数据库存储)。对于需要持久化任务的场景,推荐使用 `JDBCJobStore`。 ### 4. 动态管理任务 若依框架支持通过管理台动态管理任务,包括任务的启动、暂停、恢复和删除。这些操作可以通过 Quartz 提供的 API 实现。例如,通过 `Scheduler` 接口的方法可以控制任务的生命周期。 ### 5. cron 表达式动态配置 为了支持动态配置定时任务执行时间,可以通过管理台输入 cron 表达式。用户可以根据需求设置每天的执行时间(如每天早上 9 点),Quartz 会根据提供的 cron 表达式进行任务调度。 ### 6. 任务持久化 如果需要任务在系统重启后仍然存在,可以通过配置 `JDBCJobStore` 将任务信息存储在数据库中。这样,任务信息不会因为系统重启而丢失。 ### 7. 任务执行监控 若依框架还提供了任务执行的监控功能,可以查看任务的执行日志、执行状态等信息,便于调试和维护。 通过上述步骤,可以在若依框架中实现自定义定时任务的添加和管理。这种机制为动态任务调度提供了灵活性和可扩展性,适合各种复杂的任务调度需求。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值