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

网站建设的 几点游戏推广渠道

网站建设的 几点,游戏推广渠道,代理服务网站,app企业开发公司kotlin dsl在以前的博客文章中#xff0c;我描述了Spring Web Framework中的响应式编程支持Spring Webflux如何使用基于Kotlin的DSL使用户能够以非常直观的方式描述路由。 在这里#xff0c;我想探索一些底层实现。 描述一组端点的样本DSL看起来像这样#xff1a; package… kotlin dsl 在以前的博客文章中我描述了Spring Web Framework中的响应式编程支持Spring Webflux如何使用基于Kotlin的DSL使用户能够以非常直观的方式描述路由。 在这里我想探索一些底层实现。 描述一组端点的样本DSL看起来像这样 package sample.routesimport org.springframework.context.annotation.Bean import org.springframework.context.annotation.Configuration import org.springframework.http.MediaType.APPLICATION_JSON import org.springframework.web.reactive.function.server.router import sample.handler.MessageHandlerConfiguration class AppRoutes(private val messageHandler: MessageHandler) {Beanfun apis() router {(accept(APPLICATION_JSON) and /messages).nest {GET(/, messageHandler::getMessages)POST(/, messageHandler::addMessage)GET(/{id}, messageHandler::getMessage)PUT(/{id}, messageHandler::updateMessage)DELETE(/{id}, messageHandler::deleteMessage)}}} 为了分析样本让我从一个较小的工作示例开始 import org.junit.Test import org.springframework.test.web.reactive.server.WebTestClient import org.springframework.web.reactive.function.server.ServerResponse.ok import org.springframework.web.reactive.function.server.routerclass AppRoutesTest {Testfun testSimpleGet() {val routerFunction router {GET(/isokay, { _ - ok().build() })}val client WebTestClient.bindToRouterFunction(routerFunction).build()client.get().uri(/isokay).exchange().expectStatus().isOk} } 路由定义的核心是“路由器”功能 import org.springframework.web.reactive.function.server.router ... val routerFunction router {GET(/isokay, { _ - ok().build() }) } 通过以下方式定义 fun router(routes: RouterFunctionDsl.() - Unit) RouterFunctionDsl().apply(routes).router() 参数“ routes”是lambda表达式的一种特殊类型 称为带接收器的Lambda表达式 。 这意味着在路由器功能的上下文中此lambda表达式只能由“ RouterFunctionDsl”实例调用这是在函数主体中使用apply方法完成的操作这也意味着在lambda表达式主体中“此”是“ RouterFunctionDsl”的实例。 知道了这一点便可以访问“ RouterFunctionDsl”的方法该方法之一就是示例中使用的GETGET的定义如下 fun GET(pattern: String, f: (ServerRequest) - MonoServerResponse) {... } 还有其他方式表示相同的端点 GET(/isokay2)({ _ - ok().build() }) 在Kotlin中非常巧妙地实现为 fun GET(pattern: String): RequestPredicate RequestPredicates.GET(pattern)operator fun RequestPredicate.invoke(f: (ServerRequest) - MonoServerResponse) {... } 此处使用模式的GET返回一个“ RequestPredicate”已为其定义了一个扩展函数 在DSL的上下文中称为invoke而后者又是一个特别命名的运算符 。 或第三种方式 /isokay { _ - ok().build() } 这是通过在String类型上添加扩展函数来实现的并通过以下方式定义 operator fun String.invoke(f: (ServerRequest) - MonoServerResponse) {... } 我觉得Spring Webflux很好地利用了Kotlin DSL使其中一些路由定义易于阅读同时保持简洁。 这应该提供足够的入门知识以探索Spring Webflux中Routing DSL的源代码。 我的示例可在此处的github存储库中找到 – https://github.com/bijukunjummen/webflux-route-with-kotlin 翻译自: https://www.javacodegeeks.com/2017/09/spring-webflux-kotlin-dsl-walkthrough-implementation.htmlkotlin dsl
http://www.yutouwan.com/news/11921/

相关文章:

  • 网站开发人员的职责罗湖网页设计
  • 郑州服装网站建设公司0基础学网站设计
  • 康乐县网站建设wordpress 自动推送
  • 做擦边网站七牛云动静分离wordpress
  • 用r语言 做网站点击热力图舟山新闻最新消息
  • 做啥网站赚钱企业网站建设方案平台
  • 站酷设计网站官网入做网站贵不
  • 网站域名的作用是什么意思网站建设考核指标
  • 门户网站是指网上商城项目设计方案
  • 阿里云服务器架设网站做周边的网站
  • 网上商城网站建设意义做网站开发的方案
  • 网站的互动功能宁波十大外贸公司
  • 关于网站开发的在线舆情系统
  • 黄石网站建设(乐云践新)网站建设要
  • 建设网站要求广告设计与制作好找工作吗
  • 深圳华鑫峰网站建设中国网站开发的前景
  • 北京大学两学一做网站怎么写网站
  • 旅游网官方网站郑州网站推广价
  • 网站更换主机需要怎么做基层建设期刊在哪个网站被收录
  • 濮阳团购网站建设搜索引擎广告收费方式
  • 深圳网站制作公司资讯建设多语种网站
  • 网站建设价格标准方案高端网站建设公司兴田德润可以不
  • 公司企业网站免费建设三合一网站开发架构
  • 那些网站能够做推广案例学 网页设计与网站建设
  • 网站设计初步规划建筑业企业资质证书多少钱
  • 龙岩网站改版较好的公司张店网站制作首选专家
  • 微信网站设计尺寸百度推广助手客户端
  • 闽清建设局网站做一个电子商务网站建设策划书
  • 做漫画网站的素材织梦网站如何更新系统
  • 南阳旅游网站建设电商外贸平台大全