springboot任务之异步任务
时间:2022-07-23
本文章向大家介绍springboot任务之异步任务,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
先看同步的情况:
AysncService.java
package com.gong.spingbootes.service;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
@Service
public class AysncService {
public void hello(){
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("处理数据中");;
}
}
AysncController.java
package com.gong.spingbootes.controller;
import com.gong.spingbootes.service.AysncService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class AsyncController {
@Autowired
AysncService aysncService;
@ResponseBody
@GetMapping("/hello")
public String hello(){
aysncService.hello();
return "success";
}
}
此时我们启动服务器,并输出localhost:8080/hello,会在3s之后响应的success。
此时,我们可以标识service方法为异步方法,即在AysncService中的hello方法上标识@Aysnc注解,同时在启动入口上标识@EnableAysnc注解:
package com.gong.spingbootes;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.scheduling.annotation.EnableAsync;
@EnableAsync
@SpringBootApplication
public class SpingbootEsApplication {
public static void main(String[] args) {
SpringApplication.run(SpingbootEsApplication.class, args);
}
}
这时,我们再访问localhost:8080/hello,就不会在3s之后才响应了,而是立刻响应。
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- Vue Router
- Codeforces Round #318 [RussianCodeCup Thanks-Round] (Div. 1) B. Bear and Blocks (技巧dp 难想)
- Codeforces 727D-T-shirts Distribution (字符串 贪心)
- 详解 Vue 目录及配置文件之 build 目录
- Linux 常见文件管理命令及目录结构(1)
- Java parseInt( ) 方法
- 详解 Vue 目录及配置文件之 node_modules,src,static,test 目录
- 洛谷 P1077 摆花(记忆化搜索 or DP)
- Vue 使用 element-ui
- Codeforces Round #629 (Div. 3) F. Make k Equal (技巧暴力,类前缀和,思维,数学)
- vue 渐变色文字
- Java 水题系列(2)Pi的近似值
- vue 无缝滚动组件 vue-seamless-scroll
- Java 水题系列(3)回文素数
- NDB Cluster 8.0中的自动模式同步:第1部分