swagger and restful api 参考
http://git.oschina.net/redArmy/spring-cloud-books/blob/master/spring-cloud-provider-book/src/main/java/com/wujunshen/controller/BookController.java /*** @param book 传入的book对象实例* @return 成功或失败信息,json格式封装*/@PostMapping(value = "/api/books", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)@ApiOperation(value = "添加某本书籍", httpMethod = "POST",notes = "添加成功返回bookId",response = BaseResultVo.class)@ApiResponses(value = {@ApiResponse(code = 200, message = "Success", response = BaseResultVo.class),@ApiResponse(code = 401, message = "Unauthorized"),@ApiResponse(code = 403, message = "Forbidden"),@ApiResponse(code = 404, message = "Not Found"),@ApiResponse(code = 500, message = "Failure")})public BaseResultVo saveBook(@Validated @ApiParam(value = "添加的某本书籍信息", required = true) @RequestBody Book book) {BaseResultVo baseResultVo = new BaseResultVo();baseResultVo.setData(bookService.saveBook(book));baseResultVo.setCode(ResultStatusCode.OK.getCode());baseResultVo.setMessage(ResultStatusCode.OK.getMessage());return baseResultVo;}/*** @return 成功或失败信息,json格式封装*/@GetMapping(value = "/api/books", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)@ApiOperation(value = "查询所有书籍", httpMethod = "GET",notes = "查询所有书籍",response = BaseResultVo.class)@ApiResponses(value = {@ApiResponse(code = 200, message = "Success", response = BaseResultVo.class),@ApiResponse(code = 401, message = "Unauthorized"),@ApiResponse(code = 403, message = "Forbidden"),@ApiResponse(code = 404, message = "Not Found"),@ApiResponse(code = 500, message = "Failure")})public BaseResultVo getBooks() {Books books = bookService.getBooks();BaseResultVo baseResultVo = new BaseResultVo();if ((books != null) && (!books.getBookList().isEmpty())) {baseResultVo.setData(books);baseResultVo.setCode(ResultStatusCode.OK.getCode());baseResultVo.setMessage(ResultStatusCode.OK.getMessage());} else {baseResultVo.setCode(ResultStatusCode.DATA_QUERY_ERROR.getCode());baseResultVo.setData("Query books failed");baseResultVo.setMessage(ResultStatusCode.DATA_QUERY_ERROR.getMessage());}return baseResultVo;}/*** @param bookId 传入的bookId* @return 成功或失败信息,json格式封装*/@GetMapping(value = "/api/books/{bookId:[0-9]*}")@ApiOperation(value = "查询某本书籍", httpMethod = "GET",notes = "根据bookId,查询到某本书籍",response = BaseResultVo.class)@ApiResponses(value = {@ApiResponse(code = 200, message = "Success", response = BaseResultVo.class),@ApiResponse(code = 401, message = "Unauthorized"),@ApiResponse(code = 403, message = "Forbidden"),@ApiResponse(code = 404, message = "Not Found"),@ApiResponse(code = 500, message = "Failure")})public BaseResultVo getBook(@ApiParam(value = "书籍ID", required = true) @PathVariable("bookId") Integer bookId) {LOGGER.info("请求参数bookId值:{}", bookId);Book book = bookService.getBook(bookId);BaseResultVo baseResultVo = new BaseResultVo();if (book != null) {LOGGER.info("查询到书籍ID为{}的书籍", bookId);baseResultVo.setData(book);baseResultVo.setCode(ResultStatusCode.OK.getCode());baseResultVo.setMessage(ResultStatusCode.OK.getMessage());} else {LOGGER.info("没有查询到书籍ID为{}的书籍", bookId);baseResultVo.setCode(ResultStatusCode.DATA_QUERY_ERROR.getCode());baseResultVo.setData("Query book failed id=" + bookId);baseResultVo.setMessage(ResultStatusCode.DATA_QUERY_ERROR.getMessage());}return baseResultVo;}@PutMapping(value = "/api/books/{bookId:[0-9]*}")@ApiOperation(value = "更新某本书籍", httpMethod = "PUT",notes = "更新的某本书籍信息",response = BaseResultVo.class)@ApiResponses(value = {@ApiResponse(code = 200, message = "Success", response = BaseResultVo.class),@ApiResponse(code = 401, message = "Unauthorized"),@ApiResponse(code = 403, message = "Forbidden"),@ApiResponse(code = 404, message = "Not Found"),@ApiResponse(code = 500, message = "Failure")})public BaseResultVo updateBook(@NotNull @ApiParam(value = "要更新的某本书籍ID", required = true) @PathVariable("bookId") Integer bookId, @Validated @NotNull @ApiParam(value = "要更新的某本书籍信息", required = true) @RequestBody Book book) {LOGGER.info("请求参数bookId值:{}", bookId);BaseResultVo baseResultVo = new BaseResultVo();if (bookId == null && book == null) {baseResultVo.setCode(ResultStatusCode.DATA_INPUT_ERROR.getCode());baseResultVo.setMessage(ResultStatusCode.DATA_INPUT_ERROR.getMessage());return baseResultVo;}if (bookService.getBook(bookId) == null) {baseResultVo.setCode(ResultStatusCode.DATA_QUERY_ERROR.getCode());baseResultVo.setData("book id=" + bookId + " not existed");baseResultVo.setMessage(ResultStatusCode.DATA_QUERY_ERROR.getMessage());return baseResultVo;}Book updatedBook = bookService.updateBook(book);if (updatedBook != null) {baseResultVo.setData(updatedBook);baseResultVo.setCode(ResultStatusCode.OK.getCode());baseResultVo.setMessage(ResultStatusCode.OK.getMessage());} else {baseResultVo.setCode(ResultStatusCode.DATA_UPDATED_ERROR.getCode());baseResultVo.setData("Update book failed id=" + book.getBookId());baseResultVo.setMessage(ResultStatusCode.DATA_UPDATED_ERROR.getMessage());}return baseResultVo;}@DeleteMapping(value = "/api/books/{bookId:[0-9]*}")@ApiOperation(value = "删除某本书籍信息", httpMethod = "DELETE",notes = "删除某本书籍信息",response = BaseResultVo.class)@ApiResponses(value = {@ApiResponse(code = 200, message = "Success", response = BaseResultVo.class),@ApiResponse(code = 401, message = "Unauthorized"),@ApiResponse(code = 403, message = "Forbidden"),@ApiResponse(code = 404, message = "Not Found"),@ApiResponse(code = 500, message = "Failure")})public BaseResultVo deleteBook(@ApiParam(value = "要删除的某本书籍ID", required = true) @PathVariable("bookId") Integer bookId) {BaseResultVo baseResultVo = new BaseResultVo();if (bookService.deleteBook(bookId) == 1) {baseResultVo.setData("Deleted book id=" + bookId);baseResultVo.setCode(ResultStatusCode.OK.getCode());baseResultVo.setMessage(ResultStatusCode.OK.getMessage());} else {baseResultVo.setCode(ResultStatusCode.DATA_DELETED_ERROR.getCode());baseResultVo.setData("Deleted book failed id=" + bookId);baseResultVo.setMessage(ResultStatusCode.DATA_DELETED_ERROR.getMessage());}return baseResultVo;}
swagger and restful api 参考的更多相关文章
- Spring Boot 集成 Swagger 生成 RESTful API 文档
原文链接: Spring Boot 集成 Swagger 生成 RESTful API 文档 简介 Swagger 官网是这么描述它的:The Best APIs are Built with Swa ...
- 使用swagger作为restful api的doc文档生成
初衷 记得以前写接口,写完后会整理一份API接口文档,而文档的格式如果没有具体要求的话,最终展示的文档则完全决定于开发者的心情.也许多点,也许少点.甚至,接口总是需要适应新需求的,修改了,增加了,这份 ...
- 使用swagger作为restful api的doc文档生成——从源码中去提取restful URL接口描述文档
初衷 记得以前写接口,写完后会整理一份API接口文档,而文档的格式如果没有具体要求的话,最终展示的文档则完全决定于开发者的心情.也许多点,也许少点.甚至,接口总是需要适应新需求的,修改了,增加了,这份 ...
- 基于jeesite的cms系统(三):使用RESTful API在前端渲染数据
使用RESTful API可以更好的开发前后分离的应用,后面一节会介绍使用模版引擎Beetl开发后端渲染的应用. 一.配置Swagger(Api 接口文档) 1.使用系统自带 拷贝jeesite-mo ...
- Yii2 Restful API 原理分析
Yii2 有个很重要的特性是对 Restful API的默认支持, 通过短短的几个配置就可以实现简单的对现有Model的RESTful API 参考另一篇文章: http://www.cnblogs. ...
- Yii2+Swagger搭建RESTful风格的API项目
在现有的Advanced Template上搭建RESTful API项目的步骤: 本案例前提说明: 本例中不使用\yii\rest\ActiveController自动创建的API,而是自定义一个A ...
- ****RESTful API 设计最佳实践(APP后端API设计参考典范)
http://blog.jobbole.com/41233/ 背景 目前互联网上充斥着大量的关于RESTful API(为方便,下文中“RESTful API ”简写为“API”)如何设计的文章,然而 ...
- spring boot之使用springfox swagger展示restful的api doc
摘要 springfox swagger展示restful的api doc, swagger is A POWERFUL INTERFACE TO YOUR API. 新增文件: import org ...
- 使用swagger 生成 Flask RESTful API
使用swagger 生成 Flask RESTful API http://www.voidcn.com/article/p-rcvzjvpf-e.html swagger官网 https://swa ...
随机推荐
- mybatis的statement的解析与加载(springboot)
问题 mybatis的xml中的sql语句是启动时生成JDK代理类的时候就生成一次么 调用顺序链 解析xml配置 Reader reader = Resources.getResourceAsRead ...
- Discuz常见小问题-修改了模块,如何重新移动原有模块的帖子
如果还能找到这个帖子(比如用搜索关键字的方法,我们看到他现在已经在CodeSys控制器的目录下,可以点击那个CodeSys控制器的超链接看到里面所有帖子),打开这个帖子之后可以点击移动,然后选择新的目 ...
- 翻译记忆软件-塔多思TRADO经典教程_4
SDL Trados是世界上最流行的计算机辅助翻译(CAT) 软件,在全球拥有20万多客户,全球500强企业有超过90%的公司都在使用SDL Trados来为日常的本地化翻译工作服务.我们的使命是以强 ...
- Discuz常见大问题-如何允许用户插入视频-如何自己在页面中插入视频
从视频的下面分享中获取html代码 然后粘贴到你创建页面的指定位置(注意从优酷复制的视频宽度和高度可能比较小,你可以自己调整,或者占据100%) 最终的实现效果
- UISlider设置按钮透明
UISlider *aslider = [[UISlider alloc]initWithFrame:kCR(, , , )]; [aslider setValue:0.5]; [aslider se ...
- 创建线程安全的单例(ARC或 非ARC)
一:创建 宏 文件 SynthesizeSingleton.h SynthesizeSingleton.h #if __has_feature(objc_arc) // ARC Version #de ...
- DHTML【9】--Javascript
大家好,好长时间不见了,因为博主最近在驾校学习开车,所以耽误了DHTML的更新日程,对此实感愧疚. 好了,不再得瑟了,接下来该介绍DHTML中比较核心的一个东东—Javascript. 初看Javas ...
- DIY手机万能红外遥控器
DIY手机万能红外遥控器 1.手机安装软件:遥控精灵 2.红外二极管两个(旧的遥控器里面可以拆) 3.耳机的插头一个 步骤:首选讲两个二极管的正负相接(即a二极管的正极连接b二极管的负极,a二极管的负 ...
- 自定义AppServer
TelnetSever.cs public class TelnetServer : AppServer<TelnetSession> { protected override bool ...
- su: user tomcat does not exist
http://www.cnblogs.com/allegro/p/5005352.html 问题在于 你的startup.sh 里面设置了 用户,你需要修改为root或者tomcat用户 这是开发 迁 ...