Dependencies:
<!-- Swagger --> <dependency> <groupId>com.battcn</groupId> <artifactId>swagger-spring-boot-starter</artifactId> <version>2.1.5-RELEASE</version> </dependency>
Anda mungkin perasan bahawa Swagger yang saya ada di sini tidak rasmi Ia disepadukan oleh pihak ketiga dan konfigurasinya lebih mudah.
Konfigurasi terperinci:
spring: swagger: enabled: true title: 标题 description: 描述信息 version: 系统版本号 contact: name: 维护者信息 base-package: swagger扫描的基础包,默认:全扫描(分组情况下此处可不配置) #全局参数,比如Token之类的验证信息可以全局话配置 global-operation-parameters: - description: "Token信息,必填项" modelRef: "string" name: "Authorization" parameter-type: "header" required: true groups: basic-group: base-package: com.battcn.controller.basic system-group: base-package: com.battcn.controller.system
Konfigurasi saya
spring: swagger: title: 星空小屋 - 文章微服务接口 description: 文章微服务相关接口,包括文章、模块、知识点管理等 version: 1.0.0 - SNAPSHOT contact: name: cv大魔王 email: 1919301983@qq.com host: localhost enabled: true security: filter-plugin: true # 配置账号密码 username: root password: root
Konfigurasikan pemintas, terdapat konfigurasi pemintas kemudian, jika ada pembaca yang perlu mengkonfigurasinya sendiri Untuk kegunaan projek, sila ubah suai konfigurasi pemintas asal dan abaikan laluan berikut untuk mengelak daripada dipintas dan mengakibatkan tidak boleh diakses. "swagger-ui.html", "static/css/", "static/js/", "swagger-resources", "/**/error", "v2/api-docs"
untuk menjalankan projek dan akses IP+端口号/swagger-ui.html
, sebagai contoh, akses dalam penyemak imbas: http://127.0.0.1:13001/swagger-ui.html
Kesan selepas log masuk:
Jika anda sudah biasa dengan sombong, sila abaikan "Perenggan anotasi biasa"
`@Api`:用在 Controller 类上,描述该类的作用 1. `value`="描述信息" 2. `description`="详细描述该类的作用"
@ApiOperation
: digunakan pada kaedah permintaan Pengawal untuk menerangkan fungsi kaedah.
@ApiModel
: digunakan apabila parameter permintaan ialah objek, menerangkan peranan kelas objek
// 在对象类上使用@ApiModel @ApiModel(value="CategoryREQ对象", description="类别查询条件") public class CategoryREQ extends BaseRequest<Category> { }
@ApiModelProperty
: digunakan apabila parameter permintaan ialah atribut objek, menerangkan peranan atribut objek .
value
: perihalan atribut
hidden
: sama ada ia adalah atribut syarat pertanyaan, palsu: (nilai lalai) dalam dokumen api Dipaparkan sebagai syarat pertanyaan benar tersembunyi, bukan atribut bersyarat
// 请求方法参数是 CategoryREQ 对象 public Result search(@RequestBody CategoryREQ req) {} @ApiModel(value="CategoryREQ对象", description="类别查询条件") public class CategoryREQ extends BaseRequest<Category> { @ApiModelProperty(value = "分类名称") private String name; @ApiModelProperty(value="状态(1:正常,0:禁用)") private Integer status; }
@ApiResponses
: digunakan pada kaedah permintaan untuk mewakili set respons
@ApiResponse
: digunakan dalam @ApiResponses
, biasanya digunakan untuk menyatakan mesej respons ralat, parameter anotasi:
code
: Nombor, seperti 400message
: Maklumat, seperti "Ralat pengisian parameter"response
: Kelas yang membuang pengecualian
@ApiIgnore
: Gunakan anotasi ini untuk mengabaikan perkara ini API
@ApiImplicitParams
: Digunakan atas kaedah permintaan untuk menambah huraian pada berbilang parameter permintaan
@ApiImplicitParam
: Boleh digunakan secara bersendirian atau dalam @ApiImplicitParams untuk menambah penerangan pada satu parameter permintaan kaedah .
name
: Nama parameter
value
: Perihalan fungsi parameter
dataType
: jenis parameter, jenis parameter, String lalai, nilai lain dataType="Integer"
defaultValue
: nilai lalai parameter
required
: Sama ada parameter mesti diluluskan (benar/salah)
paramTpye
: Tentukan tempat untuk meletakkan parameter (header/query/path/ badan/bentuk)
header
: Parameter diserahkan dalam pengepala permintaan @RequestHeaderquery
: Pemetaan dan tugasan automatik dilengkapkan terus dengan parameter @RequestParampath
: Dihantar dalam bentuk pembolehubah laluan Data @PathVariablebody
: Penyerahan dalam bentuk aliran hanya menyokong POST (tidak biasa digunakan) form
: Penyerahan dalam bentuk hanya menyokong POST (tidak biasa digunakan)
Rujukan:
// 请求方法有多个请求参数 size, current @ApiImplicitParams({ @ApiImplicitParam(name="current", value="页码", required=true, paramType="path",dataType="int"), @ApiImplicitParam(name="size", value="每页记录数", required=true, paramType="path",dataType="int") }) @ApiOperation("根据分类名称与状态查询分类列表接口") @PostMapping("/search/{current}/{size}") Result search(@RequestBody CategoryREQ req, @PathVariable int current, @PathVariable int size);
Atas ialah kandungan terperinci Cara menggunakan Swagger dalam SpringBoot. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!