当前位置: 首页 > news >正文

网站开发整合编辑器购物网站建设目标概述

网站开发整合编辑器,购物网站建设目标概述,网络小说网站推广策划方案,广东建筑信息平台Spring boot如何实现异步调用异步调用:一个可以无需等待被调用函数的返回值就让操作继续进行的方法举个例子异步调用就是你 喊 你朋友吃饭 #xff0c;你朋友说知道了 #xff0c;待会忙完去找你 #xff0c;你就去做别的了。同步调用就是你 喊 你朋友吃饭 #xff0c;你朋… Spring boot如何实现异步调用异步调用:一个可以无需等待被调用函数的返回值就让操作继续进行的方法举个例子异步调用就是你 喊 你朋友吃饭 你朋友说知道了 待会忙完去找你 你就去做别的了。同步调用就是你 喊 你朋友吃饭 你朋友在忙 你就一直在那等等你朋友忙完了 你们一起去。我想大家都了解了但是怎么在代码中实现我们以往的代码都是一步步执行下去的现在我们要求某个耗时方法让他单独执行不考虑结果。题目SpringBootTestclass GzhApplicationTests {    Autowired    private AsyncTest asyncTest;    Test    void contextLoads() throws Exception {        System.out.println(---执行主线---);        asyncTest.test1();        System.out.println(---主线结束---);    }}Componentpublic class AsyncTest {    public void test1() {        System.out.println(---执行副本---);        for (int i  0; i 5; i) {            try {                Thread.sleep(1000);            } catch (InterruptedException e) {                e.printStackTrace();            }            System.out.println(---副本ing---);        }        System.out.println(---副本结束---);    }}运行结果---执行主线------执行副本------副本ing------副本ing------副本ing------副本ing------副本ing------副本结束------主线结束---这边的结果看到了他是先执行完副本然后主线才结束我们想要的是不管副本如何我们都要继续往下走专业术语异步执行。有同学说简单new Thread(),把副本放进去就可以了。Testvoid contextLoads() throws Exception {    System.out.println(---执行主线---);    new Thread(()- asyncTest.test1()).start();    System.out.println(---主线结束---);}//---执行主线---//---主线结束---//---执行副本---有人会问副本为什么没有执行完你用的是单元测试主程序跑完就项目就停止了你要是不用单元测试的话他会执行完。当然用new Thread()可以解决但是今天要用注解方式解决。Async这个注解就可以解决。EnableAsyncSpringBootApplicationpublic class GzhApplication {    public static void main(String[] args) {        SpringApplication.run(GzhApplication.class, args);    }}Componentpublic class AsyncTest {    Async    public void test1() {        System.out.println(---执行副本---);        for (int i  0; i 5; i) {            try {                Thread.sleep(1000);            } catch (InterruptedException e) {                e.printStackTrace();            }            System.out.println(---副本ing---);        }        System.out.println(---副本结束---);    }}SpringBootTestclass GzhApplicationTests {    Autowired    private AsyncTest asyncTest;    Test    void contextLoads() throws Exception {        System.out.println(---执行主线---);        asyncTest.test1();        System.out.println(---主线结束---);    }}---执行主线------主线结束------执行副本---但是有同学会说不我添加了注解不行啊。这地方我们就要去来说说要注意的事项。失效原因1.没有在SpringBootApplication启动类当中添加注解EnableAsync注解。2.异步方法使用注解Async的返回值只能为void或者Future。3.没有走Spring的代理类。因为Transactional和Async注解的实现都是基于Spring的AOP而AOP的实现是基于动态代理模式实现的。那么注解失效的原因就很明显了有可能因为调用方法的是对象本身而不是代理对象因为没有经过Spring容器。第一个和第二个的意思很清楚第三个的意思就是类的内部调用是无效的。方法一定要从另一个类中调用也就是从类的外部调用。如果你想内部调用就获取其代理对象。
http://www.yutouwan.com/news/488551/

相关文章:

  • 网站宣传与推广的指导思想网站开发 零基础
  • dedecms金融网站模板上海教育网站官网
  • 中国建设银行对公网站网站建设的基本流程包括哪些
  • 阿里巴巴国际站app凡科做的网站提示证书错误
  • 工程科技 网站设计企业网站排名优化
  • 网站建设文化流程廊坊网站建设墨子
  • 高端网站建设公司联系电话广州地铁最新
  • 免费建个人网站步骤网站备案会过期吗
  • 国外打开国内网站慢搜索广告是什么意思
  • xuzhou公司网站制作免费招聘网站平台有哪些
  • 企业可以做哪些网站有哪些内容吗平凉热度网站建设
  • 中国神鹰网站建设云南模板网站建设公司
  • 高端网站建设怎么报名网站对联广告
  • 郴州市建设网站中建八局第一建设有限公司资质
  • 网站建设报价合肥建设工程招聘信息网站
  • 柳州网站建设优化推广今天特大军事新闻
  • 池州专业网站建设公司深圳西乡网站建设公司
  • 中色十二冶金建设有限公司网站企业网站如何优化
  • 三类医疗器械成都网站建设seo优化
  • 小红书推广运营关键词排名优化免费
  • 怎样做网站系统拓者吧室内设计吧官网
  • 长尾关键词挖掘爱站网潍坊网站建设方案
  • 松岗网站设计做家教中介网站赚钱吗?
  • 做橙光游戏的网站wordpress怎么上传网站
  • 网站开发企业gta5买房子网站正在建设
  • 网站导航用什么字体宁波网站建设设计公司信息
  • 重庆网站搭建网站开发的常用流程
  • 网站后台发文章图片链接怎么做华为手机官网入口
  • 响应式网站是什么软件做的织梦模板更新网站
  • 网站禁止ping企业手机网站设计