2021年9月29日 星期三

【新要闻】Spring Cloud Task 任务开发-实现任务处理逻辑(二)

时间:2023-04-19 07:04:11来源 : 腾讯云


(相关资料图)

创建任务配置类

接下来,我们需要创建一个任务配置类,用于配置任务的输入和输出。

@Configuration@EnableTaskpublic class StringReverseTaskConfiguration {    @Bean    public TaskConfigurer taskConfigurer() {        return new DefaultTaskConfigurer(dataSource());    }    @Bean    public DataSource dataSource() {        return new EmbeddedDatabaseBuilder()                .setType(EmbeddedDatabaseType.H2)                .addScript("classpath:org/springframework/cloud/task/schema-h2.sql")                .build();    }    @Bean    public CommandLineRunner commandLineRunner(TaskExplorer taskExplorer) {        return args -> {            List taskExecutions = taskExplorer.getTaskExecutions(taskExplorer.getLatestTaskExecution("string-reverse-task").getTaskName());            for (TaskExecution taskExecution : taskExecutions) {                System.out.println("Execution: " + taskExecution.getExecutionId() + " / Task name: " + taskExecution.getTaskName() + " / Start time: " + taskExecution.getStartTime() + " / End time: " + taskExecution.getEndTime() + " / Exit code: " + taskExecution.getExitCode());            }        };    }    @Bean    public Task stringReverseTask() {        return new SimpleTaskBuilder()                .name("string-reverse-task")                .input("Hello World!")                .tasklet(new StringReverseTask())                .build();    }}

在上面的代码中,我们创建了一个名为stringReverseTask的任务,使用SimpleTaskBuilder类创建任务对象。我们通过name方法来为任务命名,通过input方法设置任务的输入,通过tasklet方法设置任务的执行逻辑。这里我们使用了之前实现的StringReverseTask类作为任务执行逻辑。

运行任务

现在,我们已经实现了任务的输入、输出以及任务处理逻辑,接下来我们需要运行任务。

我们可以通过CommandLineRunner类运行任务,CommandLineRunner接口在Spring Boot应用程序启动后执行一些预定义的任务。我们在之前的StringReverseTaskConfiguration类中定义了一个CommandLineRunner类,该类通过TaskExplorer类查询任务执行结果并将结果输出到控制台。

现在我们可以运行Spring Boot应用程序,看到任务的执行结果:

Received input: Hello World!Output: !dlroW olleHExecution: 1 / Task name: string-reverse-task / Start time: 2022-04-23 17:09:27.149 / End time: 2022-04-23 17:09:27.155 / Exit code: 0

在上面的输出中,我们可以看到任务的输入和输出,以及任务的执行结果。此外,我们还可以看到任务的执行时间和退出码。

标签:

最近更新

【新要闻】Spring Cloud Task 任务开发-实现任务处理逻辑(二)

黄褐斑怎么消除_黄褐斑如何消除 世界播报

当前聚焦:2023年“中国航天日”将发布中国首次火星探测成果

致5死13伤,广州驾车撞人案被告一审被判死刑 世界视讯

天天微速讯:收入态势回稳向上 支出保持较高强度——解读一季度财政收支数据

全球热消息:教育部公布学科类隐形变异违规培训典型案例

看见谁都喊妈妈只会害了你!_当前热讯

重点聚焦!彭德怀纪念馆红色文化宣讲走进湘大校园

「独家」平安资管首度提出战略重组新方案,对汇丰五个方面深感担忧

世界观焦点:萨利巴伤病恢复进展顺利,埃尔内尼晒队友在健身房训练视频

大咖说|王旻:做好国际传播能力建设,讲好黄河故事|环球热推荐

业内人士热议银行业转型:聚焦经济周期弱敏感资产

世界今头条!山西断陷盆地地面沉降地裂缝研究

今日报丨中奥企业助推实现碳中和目标

我国首次发布国家农作物优良品种推广目录 引导推动品种更新换代:全球微速讯

斗罗大陆:比比东感谢宁风致,他却蒙在鼓里,直到剑尘心说出真相

每日短讯:军迷偷拍福建舰,判刑!

最健康的减肥方法有哪些_最健康的减肥方法 每日速看

有一本小说主角叫叶凡的(有一本小说主角叫叶凡)

葡萄藤简笔画图片_葡萄藤简笔画_世界快看点

何超莲窦骁官宣结婚,请柬一句话揭露豪门婚姻真相|世界播报

头条:空客(EADSY.US)推迟2024年的A320neo系列飞机交付 重申明年及以后产量目标

【天天播资讯】上海十大专科学校排名 辽宁专科学校排名

魏牌携“蓝山/高山双旗舰组合”闪耀上海车展_环球简讯

当日快讯:洲际油气公司再成被执行人,执行标的近4亿元_全球通讯

【环球快播报】专访看度新闻负责人:深化融合之下 “看视界 见温度”的融媒之路

沙尘暴又来了!8省区将有扬沙或浮尘天气_全球快资讯

洗好的小龙虾放冷藏还是冷冻_环球播报

每日热点:“职场神器”!北大团队推出ChatExcel:不用再记函数公式

天天热点评!“海纳百川”计划发布:长安汽车上海车展坚定向世界级品牌迈进

Back to Top