swagger

Reusing a subset of an enum in OpenAPI (Swagger)

╄→гoц情女王★ 提交于 2020-11-29 10:57:44
问题 I'm trying to achieve an OpenAPI definition where I define a shared, complete list of allowed values as an enum and then use subgroups of the values in different places to show which values are allowed in each case. Using the example from the enum spec on Swagger.io, if I have a definition like this: paths: /products: get: parameters: - in: query name: color required: true schema: $ref: '#/components/schemas/Color' responses: '200': description: OK components: schemas: Color: type: string

Reusing a subset of an enum in OpenAPI (Swagger)

孤人 提交于 2020-11-29 10:55:58
问题 I'm trying to achieve an OpenAPI definition where I define a shared, complete list of allowed values as an enum and then use subgroups of the values in different places to show which values are allowed in each case. Using the example from the enum spec on Swagger.io, if I have a definition like this: paths: /products: get: parameters: - in: query name: color required: true schema: $ref: '#/components/schemas/Color' responses: '200': description: OK components: schemas: Color: type: string

一个 SpringBoot 项目该包含哪些?

纵饮孤独 提交于 2020-11-28 01:48:33
作者:不一样的科技宅 juejin.im/post/6844904083942277127 前言 建立一个全新的项目,或者把旧的庞大的项目,进行拆分成多个项目。在建立新的项目中,经常需要做一些重复的工作,比如说拷贝一下常用的工具类,通用代码等等。 所以就可以做一个基础的项目方便使用,在经历新项目的时候,直接在基础项目上进行简单配置就可以开发业务代码了。 基础项目该包含哪些东西。 Swagger 在线接口文档。 CodeGenerator 代码生成器。 统一返回。 通用的分页对象。 常用工具类。 全局异常拦截。 错误枚举。 自定义异常。 多环境配置文件。 Maven多环境配置。 日志配置。 JenkinsFile。 ❝ 可以在评论区进行补充 ❞ Swagger 写接口文档通常是一件比较头疼的事情,然而swagger就用是用来帮我们解决这个问题的。可以在线生成接口文档,并且可以在页面上进行测试。 可以非常清楚的显示,请求数据已经响应数据。当然这一切都需要在代码中进行配置。 「注意的点:接口文档只能在测试/开发环境开启,其他环境请关闭。」 常用的Swagger注解 @Api用于Controller @ApiOperation用于Controller内的方法。 @ApiResponses用于标识接口返回数据的类型。 @ApiModel用于标识类的名称

一个 SpringBoot 项目该包含哪些?

怎甘沉沦 提交于 2020-11-27 20:52:10
作者:不一样的科技宅 juejin.im/post/6844904083942277127 前言 建立一个全新的项目,或者把旧的庞大的项目,进行拆分成多个项目。在建立新的项目中,经常需要做一些重复的工作,比如说拷贝一下常用的工具类,通用代码等等。 所以就可以做一个基础的项目方便使用,在经历新项目的时候,直接在基础项目上进行简单配置就可以开发业务代码了。 基础项目该包含哪些东西。 Swagger在线接口文档。 CodeGenerator 代码生成器。 统一返回。 通用的分页对象。 常用工具类。 全局异常拦截。 错误枚举。 自定义异常。 多环境配置文件。 Maven多环境配置。 日志配置。 JenkinsFile。 ❝ 可以在评论区进行补充 ❞ Swagger 写接口文档通常是一件比较头疼的事情,然而swagger就用是用来帮我们解决这个问题的。可以在线生成接口文档,并且可以在页面上进行测试。 可以非常清楚的显示,请求数据已经响应数据。当然这一切都需要在代码中进行配置。 「注意的点:接口文档只能在测试/开发环境开启,其他环境请关闭。」 常用的Swagger注解 @Api用于Controller @ApiOperation用于Controller内的方法。 @ApiResponses用于标识接口返回数据的类型。 @ApiModel用于标识类的名称

Swashbuckle.AspNetCore3.0的二次封装与使用

风格不统一 提交于 2020-11-24 06:25:36
关于 Swashbuckle.AspNetCore3.0 一个使用 ASP.NET Core 构建的 API 的 Swagger 工具。直接从您的路由,控制器和模型生成漂亮的 API 文档,包括用于探索和测试操作的 UI。 项目主页: https://github.com/domaindrivendev/Swashbuckle.AspNetCore 项目官方示例: https://github.com/domaindrivendev/Swashbuckle.AspNetCore/tree/master/test/WebSites 之前写过一篇 Swashbuckle.AspNetCore-v1.10 的使用 ,现在 Swashbuckle.AspNetCore 已经升级到 3.0 了,正好开新坑(博客重构)重新封装了下,将所有相关的一些东西抽取到单独的类库中,尽可能的避免和项目耦合,使其能够在其他项目也能够快速使用。 运行示例 封装代码 待博客重构完成再将完整代码开源,参考下面步骤可自行封装 1. 新建类库并添加引用 我引用的版本如下 <PackageReference Include="Microsoft.AspNetCore.Http.Abstractions" Version="2.1.1" /> <PackageReference Include="Microsoft

springboot使用RestHighLevelClient7简单操作ElasticSearch7增删查改/索引创建

心已入冬 提交于 2020-11-24 02:26:39
本次操作是在 Windows上安装ElasticSearch7 进行操作 导入依赖 <? xml version="1.0" encoding="UTF-8" ?> < project xmlns ="http://maven.apache.org/POM/4.0.0" xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation ="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" > < modelVersion > 4.0.0 </ modelVersion > < parent > < groupId > org.springframework.boot </ groupId > < artifactId > spring-boot-starter-parent </ artifactId > < version > 2.1.6.RELEASE </ version > < relativePath /> <!-- lookup parent from repository --> </ parent > < groupId > com.es.demo </ groupId > <

一个失败的微服务项目

只愿长相守 提交于 2020-11-24 02:21:38
一个失败的微服务项目,这是我项目的总结.失败的主要原因是对微服务的滥用,本文将总结微服务在本项目中暴露出的缺点 项目简介 这是一个休息游戏项目,主线是喂养一只可爱的小狗, 通过玩内置小游戏,或者做任务积累狗粮.在整个过程中会随机掉落红包, 红包可以之间兑换少量RMB,游戏以用户点击广告作为主要收入, 用户转化是另一部分收入 项目概况 项目分游戏端和管理端 游戏端: 游戏大厅(主界面,包含:玩家信息\邀请\站内信\成长记录\签到等) 排行榜 幸运大盘 成长任务 多款小游戏 管理端: 基础权限管理 用户管理 提现 报表 版本管理 广告与渠道 维护 人员配置 策划 x2 美术 x3 音效 x1 游戏前端(Cocos) x3 游戏后端(java) x2 管理前端(vue) x2 管理后端(java) x4 测试 x2 运维 x2 运营 x1 后端架构 spring-cloud Hoxton.SR3作为微服务框架 nacos 做服务注册发现以及配置中心 swagger2 生成doc redis 做缓存 mysql mybatis + mybatis-plus 做持久层 kafka 做消息中间件 jwt 生成token elasticsearch 做报表 每个微服务由两个模块组成,一个模块api接口,一个模块对接口进行实现, api接口用@FeignClient进行注解

阿里云oss文件存储

↘锁芯ラ 提交于 2020-11-22 00:06:13
package com.cqcfs.storage.oss.service; import java.io.InputStream; /** * 文件上传接口 * * @author kongweichun * @date 2017-12-14-上午10:45 */ public interface FileStorage{ /** * 上传文件 * * @param fileBytes 文件的字节数组 * @param key 文件名 * @return 文件标识的唯一id * @author LIQIU * @Date 2017/12/14 上午11:28 */ void store( byte [] fileBytes, String key); /** * 存储输入流 * * @param input * @param key */ void store(InputStream input, String key); /** * 下载文件 * * @param key 文件名(带后缀名的) * @author LIQIU * @Date 2017/12/14 上午11:28 */ byte [] getBytes(String key); /** * 通过KEY删除文件 * * @param key */ void remove(String key); /** *

Spring Boot + Mybatis Plus 整合——双剑合璧

一笑奈何 提交于 2020-11-19 02:51:20
前言 我前面为了自己的业务开发也写了一套SpringBoot+mybatis整合的自动代码生成工具,并实现了 lombok的使用 ,与 swagger 的整合,但是因为主要只考虑了,自己的编码习惯和业务需求,有很多不支持与问题,后续将持续完善。地址: 自动生成三层代码URL 今天就说说Spring Boot + Mybatis Plus 整合——双剑合璧: POM配置: <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <dependency>

Swagger2介绍

限于喜欢 提交于 2020-11-18 15:35:16
一 Swagger2介绍 官网: https://swagger.io/ 前后端分离开发模式中,api文档是最好的沟通方式。 前端工程师编写接口文档(使用swagger2编辑器或其他接口生成工具) 交给后端工程师 根据swagger文档编写后端接口 最终根据生成的swagger文件进行接口联调 Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。 及时性 (接口变更后,能够及时准确地通知相关前后端开发人员) 规范性 (并且保证接口的规范性,如接口的地址,请求方式,参数及响应格式和错误信息) 一致性 (接口信息一致,不会出现因开发人员拿到的文档版本不一致,而出现分歧) 可测性 (直接在接口文档上进行测试,以方便理解业务) 二 配置 Swagger2 1 依赖 <!-- swagger --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> </dependency> 2