如何实现在SpringBoot项目启动类启动时加载运动特定的代码
Posted 蜜桃婷婷酱
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何实现在SpringBoot项目启动类启动时加载运动特定的代码相关的知识,希望对你有一定的参考价值。
如何实现在SpringBoot项目启动类启动时加载运动特定的代码呢 有两种方式
为了方便测试效果,先写一个service在启动类进行注入方便我们输出
package com.wyh.test;
import org.springframework.stereotype.Service;
/**
* @program: SpringBoot-MybatisPlus-01
* @description: 我的服务
* @author: 魏一鹤
* @createDate: 2021-11-23 23:15
**/
@Service
public class MyService
public String startPrint()
System.out.println("启动类被运行加载会调用我");
return "ok";
//注入我们的service方便实用它的方法
@Autowired
private MyService myService;
第一种方式 让我们的启动类实现ApplicationRunner接口 重写它的run方法
implements ApplicationRunner
@Override
public void run(ApplicationArguments args) throws Exception
//在SpringBoot启动类启动时会被调用
myService.startPrint();
System.out.println("我是第一种方式,实现ApplicationRunner接口 重写它的run方法");
第二种方式 让我们的启动类实现CommandLineRunner接口 重写它的run方法
implements CommandLineRunner
@Override
public void run(String... args) throws Exception
//在SpringBoot启动类启动时会被调用
myService.startPrint();
System.out.println("我是第二种方式,实现CommandLineRunner接口 重写它的run方法");
开启启动类发现控制台成功打印输出
启动类被运行加载会调用我
我是第一种方式,实现ApplicationRunner接口 重写它的run方法
启动类被运行加载会调用我
我是第二种方式,实现CommandLineRunner接口 重写它的run方法
完整的代码如下
启动类
package com.wyh;
import com.wyh.test.MyService;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
@MapperScan("com.wyh.mapper") //扫描我们的mapper接口
//
//1.实现ApplicationRunner接口 重写它的run方法
//2.实现CommandLineRunner接口 重写它的run方法
public class WyhApplication implements ApplicationRunner, CommandLineRunner
//注入我们的service方便实用它的方法
@Autowired
private MyService myService;
public static void main(String[] args)
SpringApplication.run(WyhApplication.class, args);
@Override
public void run(ApplicationArguments args) throws Exception
//在SpringBoot启动类启动时会被调用
myService.startPrint();
System.out.println("我是第一种方式,实现ApplicationRunner接口 重写它的run方法");
@Override
public void run(String... args) throws Exception
//在SpringBoot启动类启动时会被调用
myService.startPrint();
System.out.println("我是第二种方式,实现CommandLineRunner接口 重写它的run方法");
service
package com.wyh.test;
import org.springframework.stereotype.Service;
/**
* @program: SpringBoot-MybatisPlus-01
* @description: 我的服务
* @author: 魏一鹤
* @createDate: 2021-11-23 23:15
**/
@Service
public class MyService
public String startPrint()
System.out.println("启动类被运行加载会调用我");
return "ok";
项目目录
以上是关于如何实现在SpringBoot项目启动类启动时加载运动特定的代码的主要内容,如果未能解决你的问题,请参考以下文章
springboot 启动类CommandLineRunner(转载)