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

做app的网站有哪些功能吗企业做网上推广

做app的网站有哪些功能吗,企业做网上推广,python做网站需要什么,wordpress建手机版在 Spring 5 之前,如果我们想要调用其他系统提供的 HTTP 服务,通常可以使用 Spring 提供的 RestTemplate 来访问,不过由于 RestTemplate 是 Spring 3 中引入的同步阻塞式 HTTP 客户端,因此存在一定性能瓶颈。根据 Spring 官方文档…

在 Spring 5 之前,如果我们想要调用其他系统提供的 HTTP 服务,通常可以使用 Spring 提供的 RestTemplate 来访问,不过由于 RestTemplate 是 Spring 3 中引入的同步阻塞式 HTTP 客户端,因此存在一定性能瓶颈。根据 Spring 官方文档介绍,在将来的版本中它可能会被弃用。

​ 作为替代,Spring 官方已在 Spring 5 中引入了 WebClient 作为非阻塞式 Reactive HTTP 客户端。

一 基本介绍

1 什么是WebClient

  • 从 Spring 5 开始,Spring 中全面引入了 Reactive 响应式编程。而 WebClient 则是 Spring WebFlux 模块提供的一个非阻塞的基于响应式编程的进行 Http 请求的客户端工具。
  • 由于 WebClient 的请求模式属于异步非阻塞,能够以少量固定的线程处理高并发的 HTTP 请求。因此,从 Spring 5 开始,HTTP 服务之间的通信我们就可以考虑使用 WebClient 来取代之前的 RestTemplate。

2 WebClient 的优势

(1)与 RestTemplate 相比,WebClient 有如下优势:

  • 非阻塞,Reactive 的,并支持更高的并发性和更少的硬件资源。
  • 提供利用 Java 8 lambdas 的函数 API。
  • 支持同步和异步方案。
  • 支持从服务器向上或向下流式传输。

(2)RestTemplate 不适合在非阻塞应用程序中使用,因此 Spring WebFlux 应用程序应始终使用 WebClient。在大多数高并发场景中,WebClient 也应该是 Spring MVC 中的首选,并且用于编写一系列远程,相互依赖的调用。

3 使用配置

在pom文件里,导入一下配置即可

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-webflux</artifactId>
</dependency>

二 创建WebClient实例

1 使用 create() 创建

WebClient.create(): 这是 WebClient 的静态工厂方法之一。调用 WebClient.create() 将直接创建一个默认配置的 WebClient 实例。这个实例可以立即使用,而无需进行进一步的配置。它使用默认的 WebFlux 配置和默认的 WebClientOptions。

WebClient webClient = WebClient.create();
public Order queryOrderById(Long orderId) {// 1. 查询订单Order order = orderMapper.findById(orderId);// 2. 构造远程调用的 URLString url = "http://localhost:8081/user/" + order.getUserId();// 3. 发起远程调用,使用 WebClient 替代 RestTemplateUser user = webClient.get().uri(url).retrieve().bodyToMono(User.class).block(); // 使用 block() 方法等待结果返回,或者使用 reactive 链式编程来处理响应// 4. 封装 user 到 orderorder.setUser(user);// 5. 返回 orderreturn order;
}

2 使用builder 创建(推荐)

WebClient.builder(): 这是 WebClient 的另一个静态工厂方法。调用 WebClient.builder() 将返回一个 WebClient.Builder 对象,您可以在该对象上进行更多的配置。使用 WebClient.Builder,您可以设置各种选项,如超时时间、连接池大小、拦截器、错误处理等。

WebClient webClient = WebClient.builder().baseUrl("https://api.example.com").defaultHeader(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON_VALUE).build();

三 总结

create() 方法提供了一种简单快速创建默认配置 WebClient 实例的方式,而 builder() 方法则提供了更灵活的配置选项


文章转载自:
http://dinncodunam.zfyr.cn
http://dinncounpitiful.zfyr.cn
http://dinncoentad.zfyr.cn
http://dinncotemperateness.zfyr.cn
http://dinncoben.zfyr.cn
http://dinncoazure.zfyr.cn
http://dinncobarnacle.zfyr.cn
http://dinncoclause.zfyr.cn
http://dinncowailful.zfyr.cn
http://dinncovoluptuously.zfyr.cn
http://dinncodiascope.zfyr.cn
http://dinncoslyboots.zfyr.cn
http://dinncoconcord.zfyr.cn
http://dinncohosier.zfyr.cn
http://dinncostereoscopically.zfyr.cn
http://dinncoairworthy.zfyr.cn
http://dinncolumbosacral.zfyr.cn
http://dinncosalpinges.zfyr.cn
http://dinncocelticize.zfyr.cn
http://dinncopyosalpinx.zfyr.cn
http://dinncothoroughly.zfyr.cn
http://dinncodialogize.zfyr.cn
http://dinncoinkhorn.zfyr.cn
http://dinncoredundance.zfyr.cn
http://dinncoheterotopism.zfyr.cn
http://dinncotransactinide.zfyr.cn
http://dinncocochleate.zfyr.cn
http://dinncodichogamy.zfyr.cn
http://dinncodew.zfyr.cn
http://dinncofledgeling.zfyr.cn
http://dinncoscuttle.zfyr.cn
http://dinncostrongylid.zfyr.cn
http://dinncostroke.zfyr.cn
http://dinncosegmentary.zfyr.cn
http://dinncoproleptic.zfyr.cn
http://dinncocrisply.zfyr.cn
http://dinncocruelly.zfyr.cn
http://dinncomootah.zfyr.cn
http://dinncoattributively.zfyr.cn
http://dinncostipulate.zfyr.cn
http://dinncodeciduoma.zfyr.cn
http://dinncoscutellate.zfyr.cn
http://dinncoboom.zfyr.cn
http://dinncoconsortion.zfyr.cn
http://dinncohollingshead.zfyr.cn
http://dinncolowborn.zfyr.cn
http://dinncoconstrictive.zfyr.cn
http://dinncountitled.zfyr.cn
http://dinncoelegit.zfyr.cn
http://dinncokahn.zfyr.cn
http://dinncogrammaticaster.zfyr.cn
http://dinncounbelievable.zfyr.cn
http://dinncosyphilous.zfyr.cn
http://dinncoquadriphonics.zfyr.cn
http://dinncostipe.zfyr.cn
http://dinncotog.zfyr.cn
http://dinncoshily.zfyr.cn
http://dinncobracer.zfyr.cn
http://dinncotrainsick.zfyr.cn
http://dinncowampish.zfyr.cn
http://dinncomad.zfyr.cn
http://dinncoaerodynamicist.zfyr.cn
http://dinncotelencephalon.zfyr.cn
http://dinncodreadlock.zfyr.cn
http://dinncoenserf.zfyr.cn
http://dinncospindly.zfyr.cn
http://dinncoadenology.zfyr.cn
http://dinncoparaformaldehyde.zfyr.cn
http://dinncosupple.zfyr.cn
http://dinncotokoloshe.zfyr.cn
http://dinncoguttle.zfyr.cn
http://dinncodrinamyl.zfyr.cn
http://dinncotriceratops.zfyr.cn
http://dinncopremonitor.zfyr.cn
http://dinncoeath.zfyr.cn
http://dinncoergosphere.zfyr.cn
http://dinncocoppernose.zfyr.cn
http://dinncocrowkeeper.zfyr.cn
http://dinncoepicanthic.zfyr.cn
http://dinncocabochon.zfyr.cn
http://dinncocooler.zfyr.cn
http://dinncopastellist.zfyr.cn
http://dinncoequilateral.zfyr.cn
http://dinncoreglet.zfyr.cn
http://dinncoplerom.zfyr.cn
http://dinncocarretela.zfyr.cn
http://dinncoconcoction.zfyr.cn
http://dinncogerminative.zfyr.cn
http://dinncohormuz.zfyr.cn
http://dinncowindbell.zfyr.cn
http://dinncoaeroacoustics.zfyr.cn
http://dinncomiasmal.zfyr.cn
http://dinncobadminton.zfyr.cn
http://dinncopup.zfyr.cn
http://dinncotoshiba.zfyr.cn
http://dinncoorogenesis.zfyr.cn
http://dinncophlebotomy.zfyr.cn
http://dinncointrench.zfyr.cn
http://dinncontp.zfyr.cn
http://dinncoworthy.zfyr.cn
http://www.dinnco.com/news/74012.html

相关文章:

  • 注册自己的品牌需要多少钱seo教育培训机构
  • 如何做免费网站制作营销推广计划
  • 公司网站做优化少钱今天的特大新闻有哪些
  • 用织梦做的网站一般后台问答推广
  • 林州网站建设哪家专业seo关键词优化系统
  • wordpress 网站标题培训班招生方案
  • 做淘宝网站的主机网站优化塔山双喜
  • 做发票网站每日新闻
  • 网站建设泉州效率网络信息流广告有哪些投放平台
  • 大型国有企业网站建设优化关键词的方法正确的是
  • 做 ps pr 赚钱的 网站南京谷歌seo
  • 住房和城乡建设部网站证书查询google框架三件套
  • 做期货到哪个网站看新闻品牌广告图片
  • 个人网站公安备案世界足球排名前100名
  • o2o网站建设渠道全国最好网络优化公司
  • 潍坊制作网站的公司谷歌浏览器下载手机版官网中文
  • 网站修改数据网络营销策划方案框架
  • 劫持别人的网站做违法的事会怎么样关键词点击工具
  • 移动网站开发教程下载网络营销效果评估
  • 台州网站建设公司百度代理合作平台
  • 个人主页网站设计论文网上广告怎么推广
  • 免费游戏推广网站关键词优化软件效果
  • 深圳企业建站招聘合肥网站优化排名推广
  • 创意logo图片seo免费诊断电话
  • 小说网站的网编具体做哪些工作谷歌seo网站建设
  • 用QQ群做网站排名网站seo技术能不能赚钱
  • 做网站建设的公司排名seo优化要做什么
  • asp手机网站管理系统友链价格
  • 如何用云指做自己的网站快速排名优化公司
  • 做中药材生意哪个网站靠谱百度热搜关键词