springboot学习入门简易版七---springboot2.0使用@Async异步执行方法(17)
2024-10-10 20:16:38
1启动类开启异步调用注解
@SpringBootApplication
@EnableAsync //开启异步调用
public class StartApplication {
不开启则异步调用无效
2编写异步调用方法
@RestController
public class AsyncController {
private final static Logger logger=LoggerFactory.getLogger(WebLogAspect.class);
@Autowired
private AsyncService asyncService; @RequestMapping("/testAsync")
public String testAsync() {
logger.info("1");
String result=asyncService.asynTest();
logger.info("4");
return result;
}
}
@Service
public class AsyncService {
private final static Logger logger=LoggerFactory.getLogger(WebLogAspect.class); @Async //相当于重新开辟单独线程执行该方法
public String asynTest() {
logger.info("2");
try {
Thread.sleep(5000);
}catch(Exception e) { }
logger.info("3");
return "success";
}
}
3 访问:http://localhost:8080/testAsync
页面显示空,后台日志:
说明异步调用成功,未按顺序执行。
原理:使用aop技术在运行时创建一个单独线程执行
github代码:https://github.com/cslj2013/springboot2.0_log_aop.git
最新文章
- iOS 下拉刷新-上拉加载原理
- 视图控制器的View整体上移问题
- ABP集合贴(转)
- EasyUI中控件汉化问题
- 编程范式 epesode7,8 stack存放指针类型and heap,register
- Valid Palindrome [LeetCode]
- [原]hdu2602 Bone Collector (01背包)
- PhpStorm, XDebug, and DBGp Proxy
- SecureCRT 7.3.4 安装以及破解
- Ngnix安装
- Week13(12月2日):又到了那个点,期末了~~~~
- 基于visual Studio2013解决C语言竞赛题之0412水仙花数
- asp.net core系列 50 Identity 授权(中)
- ITP项目:一期版本分享
- 2159 ACM 杭电 杀怪 二维费用的背包+完全背包问题
- 如何修改Oracle服务IP地址
- 树剖||树链剖分||线段树||BZOJ4034||Luogu3178||[HAOI2015]树上操作
- 深入浅出JavaScript运行机制
- Mac下操作mysql
- docker相关命令
热门文章
- linux学习(2):linux服务器常用操作和命令
- Win10提示“无法打开此计算机上的组策略对象”如何解决
- 详解intent和intentfilter
- vue的mixin简化开发
- [LeetCode] 107. Binary Tree Level Order Traversal II 二叉树层序遍历 II
- Kubernetes 控制器之 Deployment 介绍(六)
- 【C/C++开发】C++编译指令#pragma pack的配对使用
- Android中的算法
- OpenJudge 1088 滑雪
- python实践项目九:操作文件-修改文件名