Spring Cloud Task 任务开发-实现任务处理逻辑(二)
2023-04-21 16:20:47 来源:腾讯云
(资料图片仅供参考)
创建任务配置类
接下来,我们需要创建一个任务配置类,用于配置任务的输入和输出。
@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 任务开发-实现任...
在上面的代码中,我们创建了一个名为stringReverseTask的任务,使用... -
重点聚焦!Python基础语法-函数-生成器函数
Python中的生成器函数是一种特殊的函数,它可以在调用时产生一个迭... -
焦点短讯!拒绝续航焦虑,全新雅阁e:PHE...
与以往相比,今年的上海国际车展变化非常大,各个品牌都在积极推动... -
每日热讯!广东发布一批人事任免
广东发布一批人事任免 -
约起来!汽车品牌“大放价”!有吃有玩...
约起来!汽车品牌“大放价”!有吃有玩“送好礼” -
《春闺梦里人》今日收官 丁禹兮彭小苒...
《春闺梦里人》大婚吻戏剧照正在腾讯视频热播,由企鹅影视、华策克... -
有一种叫云南的生活丨“五一”,去中国...
夜空中一闪一闪如天空点缀着宝石的星星璀璨而耀眼一场浪漫的相会悄... -
“4·23世界读书日”丨丽江市第二届全民...
4月20日,在第28个“世界读书日”即将到来之际,“丽江市第二届全民... -
号称“史上最强火箭”,SpaceX“星舰”...
中新网4月20日电据太空探索技术公司(SpaceX)最新消息,号称“史上最... -
全球微动态丨市场监管总局今年重点打击...
新华社北京4月20日电今年市场监管总局开展的民生领域案件查办“铁拳... -
世界视点!新增21种新专业,最新大学专...
新增21种新专业,撤销925个专业点……近日,教育部公布了2022年度普... -
我国拟立法规定:对青藏高原重要雪山冰...
全国人大常委会法工委21日举行记者会,发言人臧铁伟介绍说,青藏高... -
全球热消息:机票酒店景区都很热!五一...
随着“五一”临近,假期出游的旅游产品预订迎来“冲刺”阶段。近日... -
【独家】“以诗之名,献礼春天”读书节...
活动现场郑州教育博客特约编辑梅溪主持活动并带来与春天有关的主题... -
天天快消息!15分钟便民生活圈:小消费...
这几年,商务部会同有关部门分两批在80个地区开展了“一刻钟便民生... -
最新快讯!全球首款“IMAX Enhanced”笔...
IT之家4月21日消息,惠普近日升级了旗下的薄锐产品线,推出了Envyx3... -
无人机进入三摄时代!大疆官宣Mavic 3...
快科技4月21日,早些时候,大疆官方微博放出“光影三重奏”预热视频... -
环球焦点!德赛电池20GWh储能电芯项目将...
4月20日讯,近年来,储能产业异军突起,发展迅猛。研究机构EVTank、... -
世界视点!蜂巢能源力推动力电池极致优...
中国汽车电动化在2023年开始进入了全新阶段,更安全、高性能同时更... -
2023WTT澳门冠军赛:陈梦晋级八强 当前独家
原标题:2023WTT澳门冠军赛:陈梦晋级八强4月19日,中国选手陈梦在...