springboot启动后异步启动一个程序

如果你想在 Spring Boot 启动后异步方式启动一个方法,你可以使用 Spring Framework 的异步支持和 @Async 注解来实现。以下是如何在 Spring Boot 应用程序中异步方式启动一个方法的步骤:
  1. 配置异步支持: 首先,在应用程序的主类上添加 @EnableAsync 注解,以启用异步支持
1
2
3
4
5
6
7
8
9
10
11
12
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.scheduling.annotation.EnableAsync;
 
@SpringBootApplication
@EnableAsync
public class MyApplication {
 
    public static void main(String[] args) {
        SpringApplication.run(MyApplication.class, args);
    }
}

 

  1. 创建一个服务类: 创建一个服务类,包含你要异步执行的方法。
1
2
3
4
5
6
7
8
9
10
11
12
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
 
@Service
public class MyAsyncService {
 
    @Async
    public void asyncMethod() {
        // 在这里编写你的异步方法逻辑
        System.out.println("异步方法被执行了");
    }
}

 

  1. 在应用程序的主类中调用异步方法: 在应用程序的主类的 main 方法中获取 MyAsyncService Bean 并调用异步方法。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;
 
@SpringBootApplication
@EnableAsync
public class MyApplication {
 
    public static void main(String[] args) {
        ApplicationContext context = SpringApplication.run(MyApplication.class, args);
        MyAsyncService myAsyncService = context.getBean(MyAsyncService.class);
        myAsyncService.asyncMethod();
    }
}

 

这样,异步方法将在应用程序启动后异步执行,而不会阻塞主线程。确保异步方法的调用发生在应用程序的 main 方法中。

通过使用 @Async 注解和异步方法,你可以在 Spring Boot 应用程序启动后异步执行你的方法,提高应用程序的响应性。

posted @   万笑佛  阅读(200)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
历史上的今天:
2021-10-11 vue学习笔记 八、toRef的使用
2021-10-11 vue学习笔记 七、方法的定义和使用
2021-10-11 vue学习笔记 六、ref定义单个数据
点击右上角即可分享
微信分享提示