当前位置: 首页 > 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.huolong8.cn/news/11921/

相关文章:

  • 河北省住房和城身建设厅网站网站建设后台是怎么制作的
  • 网站的客户体验西红门模板网站建设
  • 公司网站域名到期设计网站首页1
  • 网站建设是永久使用吗网站建设重要
  • 上海网站建设找缘魁南昌免费做网站
  • 做网站找哪个软件wordpress添加分类图片
  • 个人网站做产品icp备案是什么
  • ie建设企业网站进去无法显示东莞建设质监网站
  • 做办公用品网站工作计划廊坊网站建设选择青橙网络
  • 网站正在建设中中文模板ui设计师个人简历
  • 备案查询站长工具广告营销策划公司
  • 商务网站建设策划书wordpress页面调用
  • 邢台做网站推广的公司是哪家?广东网站设计公司
  • 钟星建设集团网站网站开发职业认知小结
  • 网站总体结构wordpress 点击 排名
  • sns社区网站开发国际贸易官方网站
  • 如何查网站是那家做的校园推广公司
  • 网站建设用英语怎么说免费网站开发平台
  • 枣庄网站开发公司珠海手机网站建设公司
  • 做外围网站犯法吗多导航织梦网站模板下载
  • 能播放优酷视频的网站怎样做开网站建设公司心得
  • 龙陵网站建设重庆搭建工厂
  • 初创企业网站建设流程山西城乡建设厅网站
  • 学校网站建设工作廊坊营销网站服务
  • 企业内部网站模板下载福州seo外包公司
  • 佳木斯城乡建设局网站管理微信软件
  • 简单网站模板下载信阳市住房和城乡建设局网站
  • 万网定制网站怎么样wordpress 宅男猫源码
  • 专门做图片的网站cms听完米课做的网站
  • 怎么建立一个网站平台高考加油怎么做私人网站