SpringBoot实现异步方法


1、创建一个SpringBoot的Web项目

2、开启异步注解功能

@EnableAsync

//开启异步注解功能
@EnableAsync
@SpringBootApplication
public class Springboot12TaskApplication {

  public static void main(String[] args) {
    SpringApplication.run(Springboot12TaskApplication.class, args);
  }
}

3、创建一个service类 :AsyncService

@Service
public class AsyncService {
    //告诉Spring这是一个异步方法
    @Async
    public void hello(){
        try {
            //休眠3秒
            Thread.sleep(3000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        System.out.println("处理数据中...");
    }
}

4、创建一个controller类:AsyncController

@RestController
public class AsyncController {
    @Resource
    AsyncService asyncService;
    @GetMapping("/hello")
    public String hello(){
        asyncService.hello();
        return "success";
    }
}

5、运行测试


总结:

  • 不使用异步注解,方法会休眠3秒在运行
  • 使用异步注解,方法会直接被运行


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM