当前位置: 首页 > news >正文

独立站建站平台对比媒体营销平台

独立站建站平台对比,媒体营销平台,沈阳做网站优化哪家好,网站建设 廊坊前言 你可能调第三方接口喜欢启动application,修改,再启动,再修改,顺便还有个不喜欢写JUnitTest的习惯。 你可能有一天想要在SpringBoot启动后,立马想要干一些事情,现在没有可能是你还没遇到。 那么SpringB…

前言

你可能调第三方接口喜欢启动application,修改,再启动,再修改,顺便还有个不喜欢写JUnitTest的习惯。

你可能有一天想要在SpringBoot启动后,立马想要干一些事情,现在没有可能是你还没遇到。

那么SpringBoot本身提供了一个小技巧,很多人估计没用过。

正文

1、效果

废话不多说,先写个service和controller展示个效果最实在。

来个简单的service

@Service
public class TestService {public String test() {System.err.println("Hello,Java Body ~");return "Hello,Java Body ~";}
}

再来个简单的controller

@RestController
@RequestMapping("/api")
@AllArgsConstructor
public class TestController {private final TestService testService;@GetMapping("/test")public ResponseEntity test() {return ResponseEntity.ok().body(testService.test());}
}

接下来是不是以为要启动调接口了,No,在SpringBoot的启动类中加这么个玩意儿

@SpringBootApplication
public class JavaAboutApplication {public static void main(String[] args) {SpringApplication.run(JavaAboutApplication.class, args);}@BeanCommandLineRunner lookupTestService(TestService testService) {return args -> {// 1、test接口testService.test();};}}

启动看下效果

image

可以发现,SpringBoot启动后,自动加载了service的执行程序。

这个小案例是想说明什么呢,其实就是CommandLineRunner这么个东西。

2、它是什么

CommandLineRunner是一个接口,用于在Spring Boot应用程序启动后执行一些特定的任务或代码块。当应用程序启动完成后,Spring Boot会查找并执行实现了CommandLineRunner接口的Bean。

说白了,就是SpringBoot启动后,我立马想干的事,都可以往里写。

3、我用它做过什么

我的话,和很多厂家对接过接口,在前期不会直接开始写业务,而是先调通接口,再接入业务中。

比如webservice这种,我曾经使用CommandLineRunner直接调对方接口来测试,还挺舒适,也节省了IDEA资源,但要注意调试完成后注释掉,本地测试的时候再打开就行。

image

4、它还有哪些用途

除了可以拿来调试第三方接口,它还有什么用途吗?

其实开头已经说过,它就是SpringBoot启动后,你立马想干的事,都可以在里面写,所以你完全可以发挥想象去用。

我这里,提供几个思路作为参考。

1)、数据库初始化

你可以使用CommandLineRunner来执行应用程序启动时的数据库初始化操作,例如创建表格、插入初始数据等。

2)、缓存预热

CommandLineRunner在应用程序启动后预热缓存,加载常用的数据到缓存中,提高应用程序的响应速度。

3)、加载外部资源

加载一些外部资源,例如配置文件、静态文件或其他资源。CommandLineRunner可以帮助你在启动时读取这些资源并进行相应的处理。

4)、任务初始化

使用CommandLineRunner来初始化和配置某些定时任务,确保它们在应用程序启动后立即开始运行。

5)、日志记录

SpringBoot启动后记录一些必要的日志信息,如应用程序版本、环境配置、甚至启动时间等等,这个看具体需求。

6)、组件初始化

你可能需要按照特定的顺序初始化一些组件,CommandLineRunner可以帮助你控制初始化顺序,只需要将它们添加到不同的CommandLineRunner实现类中,并使用@Order注解指定它们的执行顺序即可。

总结

其实,能用的地方挺多,我最后再举个例子,netty启动时,往往是绑定了端口并以同步形式启动。

但如果要和SpringBoot整合,我们不可能还那么做,而是交给SpringBoot来控制netty的启动和关闭,当SpringBoot启动后,netty启动,当SpringBoot关闭时,netty自然也关闭了,这样才比较优雅。

那么,我们完全可以将netty的启动执行程序放到CommandLineRunner中,这样就可以达到目的了。

没用过的xdm,今天学会一个新知识点了不,可以自己下去试试哦。


持续分享各种经验,持续输出干货,喜欢可以关注名片哦~

http://www.yidumall.com/news/89486.html

相关文章:

  • 网站建设前期策划淘宝店铺买卖交易平台
  • 建设银行手机银行网站百度网盘怎么提取别人资源
  • 动态网站开发实训品牌宣传策略
  • 中华人民共和国城乡与建设部网站公司网站设计与制作
  • ps做网站页面设置为多大搜索引擎营销的特点包括
  • 做导购型网站浙江企业网站建设
  • 酒庄企业网站自动引流推广软件
  • b2c电子商务网站需求分析永久免费的电销外呼系统
  • 郑州区块链数字钱包网站开发多少钱网站制作步骤流程图
  • 学校网站建设合同中国企业培训网
  • 网站关键字 怎么设置宁波网络营销有哪些
  • 乌海市建设局网站关键词优化排名查询
  • 国内做led灯网站有竞价网络推广
  • 网站账户上的余额分录怎么做品牌公关
  • 网站功能策划书推广手段有哪些
  • 政府类网站设计有什么要点百度地图官网2022最新版下载
  • 网站建设申请书广州最新消息
  • 龙岩市住房与城乡建设局网站百度教育app
  • 个人公司网站怎么做搭建一个app平台需要多少钱
  • 比价网站 源码搜索引擎调价平台哪个好
  • 自己怎么做短视频网站网络营销怎么做?
  • 网站开发中点赞怎么做到的推广标题怎么写
  • wordpress本地化网站推广优化网址
  • 虚拟物品网站制作模板国内疫情最新情况
  • 电商网站入口免费网站推广产品
  • 自己做店招的网站百度竞价排名是什么意思
  • 做公司网站需要网络营销就是
  • 深圳本地招聘网网站seo外链建设
  • 微信公众号怎么做文章排版牛排seo系统
  • 如何查询网站备案号优化网站结构一般包括