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

手机网站切图永久免费的云电脑

手机网站切图,永久免费的云电脑,wordpress商城支付主题,广州网站建设招聘wadl 生成java上一次我们学习了WADL的基础知识 。 语言本身并没有那么有趣#xff0c;只写了一篇有关它的文章#xff0c;但是本文的标题揭示了为什么我们需要这些知识。 JSR 311的许多实现#xff1a;JAX-RS#xff1a;RESTful Web服务的Java API提供了开箱即用的运行时WA… wadl 生成java 上一次我们学习了WADL的基础知识 。 语言本身并没有那么有趣只写了一篇有关它的文章但是本文的标题揭示了为什么我们需要这些知识。 JSR 311的许多实现JAX-RSRESTful Web服务的Java API提供了开箱即用的运行时WADL生成 Apache CXF Jersey和Restlet 。 RESTeasy还在等待。 基本上这些框架检查带有JSR-311批注的Java代码并在某些URL下生成WADL文档。 不幸的是Spring MVC不仅不实现JSR-311标准请参阅 Spring MVC是否支持JSR 311注释 而且即使它非常适合于我们也不会为我们生成WADL请参阅 SPR-8705 。公开REST服务。 由于种种原因我开始使用Spring MVC开发服务器端REST服务过了一会儿比如说以后有第三方资源我开始迷路了。 我确实需要一种对所有可用资源和操作进行分类和记录的方法。 WADL似乎是一个不错的选择。 幸运的是Spring框架已开放扩展如果您愿意在一段时间内挖掘代码可以轻松地基于现有基础结构添加新功能。 为了生成WADL我需要一个应用程序处理的URI列表实现的HTTP方法以及理想情况下哪种Java方法处理每个方法。 为ControllerRequestMappingPathVariable等扫描- -显然Spring启动捆扎MVC 的DispatcherServlet在做这项工作已经某处这样看来聪明重用这些信息而不是再次执行任务。 猜猜看我们需要的所有信息看起来都保存在一个奇怪的RequestMappingHandlerMapping类中。 这是一个调试器屏幕截图仅用于概述如何提供丰富的信息 但是它变得更好RequestMappingHandlerMapping实际上是一个Spring Bean您可以轻松地注入和使用它 Controller class WadlController Autowired()(mapping: RequestMappingHandlerMapping) {RequestMapping(method Array(GET))ResponseBody def generate(request: HttpServletRequest) new WadlApplication()} 没错我们将使用另一个Spring MVC控制器来生成WADL文档。 上一次我们设法生成表示WADL文档的JAXB类毕竟WADL是XML文件因此通过返回空的WadlApplication实例我们实际上返回的是空的但有效的WADL ?xml version1.0 encodingUTF-8 standaloneyes? application xmlnshttp://wadl.dev.java.net/2009/02/ 我不会解释实现的细节提供完整的源代码 包括示例应用程序。 基本上这是将Spring模型重写为WADL类的问题。 如果您有兴趣请查看WadlGenerator.scala它是解决方案和测试用例的中心点。 这是其中之一 test(should add parameter info for template parameter in URL) {given()val mapping Map(mappingInfo(/books, GET) - handlerMethod(listBooks),mappingInfo(/books/{bookId}, GET) - handlerMethod(readBook))when()val wadl generate(mapping)then()assertXMLEqual(wadlHeader resource pathbooksmethod nameGETdoc titlecom.blogspot.nurkiewicz.springwadl.TestController.listBooks//methodresource path{bookId}param namebookId requiredtrue /method nameGETdoc titlecom.blogspot.nurkiewicz.springwadl.TestController.readBook//method/resource/resource wadlFooter, wadl) } 不幸的是我懒得不能正确命名给定的/何时/然后块。 但是测试应该可读性强。 我要提及的唯一技术难题是将Spring基础结构提供的平面URI模式转换为分层的WADL对象基本上是树。 这是此问题的简化版本具有URI模式列表如下所示 /books /books/{bookId} /books/{bookId}/reviews /books/best-sellers /readers /readers/{readerId} /readers/{readerId}/account/new-password /readers/active /readers/passive 生成以下树数据结构 当然数据结构就像持有标签和Node子列表的Node对象一样简单。 并不是那么有挑战性但是可能是一个有趣的CodeKata 。 那么这个WADL有什么意义呢 XML真的更具可读性并有助于管理大量使用REST的应用程序吗 如果不是对WADL的强大soapUI 支持我什至都不会打扰。 为我推送的示例应用程序生成的WADL也可以轻松导入到soapUI 值得一提的两个功能。 首先soapUI显示一棵 REST资源树 与导入WSDL时的平面操作列表相反。 每个HTTP方法旁边都有一个相应的Java方法可以禁用此方法来处理它以进行故障排除和调试。 其次我们可以选择任何HTTP方法/资源并调用它。 基于WADL的描述soapUI将创建一个用户友好的向导可以在其中输入参数。 默认值将自动填充。 完成后应用程序将生成带有正确URL和内容的HTTP请求并在到达时显示响应。 真的很有帮助 顺便说一句您是否注意到max和page查询参数 我们的小型图书馆使用反射来查找RequestParam注释例如以下控制器 Controller RequestMapping(value Array(/book/{bookId}/review)) class ReviewController Autowired()(reviewService: ReviewService) {RequestMapping(method Array(GET))ResponseBody def listReviews(RequestParam(value page, required false, defaultValue 1) page: Int,RequestParam(value max, required false, defaultValue 20) max: Int) new ResultPage(reviewService.listReviews(new PageRequest(page - 1, max)))//...} 将被翻译成与WADL兼容的描述 ?xml version1.0 encodingUTF-8 standaloneyes? application xmlnshttp://wadl.dev.java.net/2009/02doc titleSpring MVC REST appllication/resources basehttp://localhost:8080/apiresource pathbook!-- --resource path{bookId}param requiredtrue styletemplate namebookId/!-- --resource pathreviewmethod nameGETdoc titlecom.blogspot.nurkiewicz.web.ReviewController.listReviews/requestparam requiredfalse default1 stylequery namepage/param requiredfalse default20 stylequery namemax//request/resource/resource/resource/resource /application 希望您对我编写的这个小型图书馆感到开心。 随时将其包含在您的项目中不要犹豫报告错误。 可以在GitHub上获得Apache许可的完整源代码 https //github.com/nurkiewicz/spring-rest-wadl。 参考 JCG合作伙伴 在Spring MVC REST应用程序中自动生成WADL   Java和社区博客中的Tomasz Nurkiewicz。 翻译自: https://www.javacodegeeks.com/2012/02/automatically-generating-wadl-in-spring.htmlwadl 生成java
http://www.zqtcl.cn/news/749207/

相关文章:

  • wordpress个人展示网站6新西兰网站后缀
  • 为什么自己做的网站别人打不开三门峡市湖滨区建设局网站
  • 长春网长春网站建设络推广工程建设国家标准网站
  • 微网站开发 mui框架网站备案幕布拍照是什么
  • 北京天通苑 做网站西安百度网站建设
  • 辽阳建设网站学校 网站 建设 目的
  • 建设电影网站赚钱公司简介模板免费word简易
  • 响应式网站设计的主页自己做装修效果图app软件
  • 做网站最简单的方法做网站开发挣钱吗
  • 网站建设基础入门国内免费的ip地址
  • wordpress 付费剧集网站坐什么网站能用到html5
  • 孝感房产网站建设wordpress E405
  • 做窗帘网站图片大全WordPress一键安装安全
  • 怎样查询网站的备案号广西住房和城乡建设厅网站证件
  • 网站区域名怎么注册网站群建设 中标
  • 官方网站 建设情况汇报网页设计开发培训
  • 门户网站的细分模式有房价暴跌开始了
  • 公司备案查询网站备案江苏省网站备案系统
  • 专业网站制作公司采用哪些技术制作网站?seo求职
  • 服装网页设计网站有个做名片什么的网站
  • 购买网站平台如何做分录泰安网站开发公司
  • 音乐介绍网站怎么做的光辉网络 石家庄网站建设
  • 沈阳网站建设搭建天元建设集团有限公司开票信息
  • 昆明网站建设公司哪家好预约网站模板
  • 自己怎么申请网站空间浙江省建设科技推广中心网站
  • 网站后台管理系统怎么添加框wordpress上传之后
  • 网站编辑属于什么行业义乌做网站哪家好
  • 沂水网站开发移动知识库管理系统
  • 成都有哪些网站建设的公司河南网站建设优化推广
  • 小说投稿赚钱的网站网站后台管理系统多少钱