Spring Cloud Task 任务开发-实现任务处理逻辑(二)

2023-04-21 16:21:08 来源:腾讯云 分享到:


【资料图】

创建任务配置类

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

@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-04-21 16:21:08

<第5594期>【榜样】安徽新闻联播|高军:公益诉讼“探路者” 头条焦点

来源:安徽省人民检察院 2023-04-21 16:07:44

有毒,千万别吃!国家卫健委紧急提示

来源:广州日报 2023-04-21 15:23:45

世界微动态丨安徽金融为科创企业发展保驾护航

来源:中安在线 2023-04-21 15:00:49

齐齐哈尔:中车齐车集团齐车公司再添一项国家级荣誉 焦点

来源:东北网 2023-04-21 15:24:16

动态焦点:大连足球史上今天:2000年实德5比0狂胜山东鲁能,面对卫冕冠军强势爆发!(4月20日)

来源:晚池 2023-04-21 14:50:42

世界视讯!众神的黄昏:2023上海车展,这些燃油车想绝地反击?

来源:车聚网

红旗H6定位为B+级轿车,4月18日上海车展正式上市,售价为19.28-23.98万元,共推出四款车型。展台位于5A01。

如果说红旗H9(参数 2023-04-21 14:49:10

今日热讯:2022马桶十大品牌排行榜_马桶哪个牌子好

来源:元宇宙网 2023-04-21 13:50:24

曹操高陵遗址博物馆高质量发展专家座谈会安阳召开

来源:大河网 2023-04-21 13:31:05

可爱爆棚!自动驾驶小巴开到滇池绿道坝河湿地公园

来源:昆明日报-掌上春城 2023-04-21 13:24:07

房山区窦店镇苏村推行“垃圾不落地”政策 规范垃圾收运方式

来源:房山发布 2023-04-21 12:45:18

凯迪拉克ct6用什么机油,凯迪拉克ct6机油型号 当前通讯

来源:腾赚网 2023-04-21 12:26:26

91充值平台_91豆充值中心 世界最新

来源:科学教育网 2023-04-21 12:19:24

椰视频 | 万宁长丰镇举办黎族苗族传统节日“三月三”分会场活动

来源:南海网 2023-04-21 12:02:25

11岁女孩玩密室逃脱被惊吓致9级伤残,获赔20余万

来源:北京日报客户端 2023-04-21 11:26:09

RMC:巴黎管理层以及姆巴佩将与加尔蒂就歧视事件沟通交流

来源:直播吧 2023-04-21 11:05:07

P7为什么能漂移带动布局 控制配置和动力是关键?-世界时讯

来源:互联网 2023-04-21 10:51:16

国海证券给予爱玛科技买入评级 全球速读

来源:每日经济新闻 2023-04-21 10:27:19

4月20日南通星辰双酚A装置稳定 焦点报道

来源:生意社 2023-04-21 09:48:29

全球今热点:Scout再度证明自己!院长实力很强,为何展现强悍带队能力?

来源:历史的印迹 2023-04-21 09:29:04

湖人很弱?季后赛假象,第七名真的只是伪装-环球快看

来源:有妖气体育 2023-04-21 09:32:18

百事通!科博达:一季度归母净利同比增长43.78%至1.32亿元

来源:金融界 2023-04-21 09:36:26

方大炭素:4月20日融资净买入78.8万元,连续3日累计净买入891.26万元 全球消息

来源:证券之星 2023-04-21 08:37:30

暧昧技师网盘_暧昧技师

来源:互联网 2023-04-21 08:09:06

天天微速讯:武汉三镇VS北京国安裁判安排:王迪主哨,张龙担任VAR

来源:直播吧 2023-04-21 08:09:04

如何跨越“数字鸿沟”?区政协委员的提议获6部门联合回应

来源:百度新闻 2023-04-21 07:41:08

至纯科技:公司不存在砍单现象 都是按销定产 全球要闻

来源:同花顺财经 2023-04-21 07:19:30

附近宠物医院怎么找_全球观点

来源:互联网 2023-04-21 07:19:11

好看好玩更好骑 试驾极核AE6电动摩托车_环球今热点

来源:爱卡汽车 2023-04-21 07:12:22

全球观察:外媒:伊朗称其迫使美军潜艇进入波斯湾时浮出水面,美军否认

来源:环球网 2023-04-21 06:21:03

Copyright   2015-2023 华夏知识产权网 版权所有  备案号:琼ICP备2022009675号-37   联系邮箱:435 227 67@qq.com