欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

關(guān)于Swagger注釋API的使用說(shuō)明

 更新時(shí)間:2022年06月14日 10:41:41   作者:嶼麟  
這篇文章主要介紹了關(guān)于Swagger注釋API的使用說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

API詳細(xì)說(shuō)明

注釋匯總

作用范圍API使用位置
對(duì)象屬性@ApiModelProperty用在出入?yún)?shù)對(duì)象的字段上
協(xié)議集描述@Api用于controller類上
協(xié)議描述@ApiOperation用在controller的方法上
Response集@ApiResponses用在controller的方法上
Response@ApiResponse用在 @ApiResponses里邊
非對(duì)象參數(shù)集@ApiImplicitParams用在controller的方法上
非對(duì)象參數(shù)描述@ApiImplicitParam用在@ApiImplicitParams的方法里邊
描述返回對(duì)象的意義@ApiModel用在返回對(duì)象類上

@RequestMapping此注解的推薦配置

  • value
  • method
  • produces

示例

    @ApiOperation("信息軟刪除")
    @ApiResponses({ @ApiResponse(code = CommonStatus.OK, message = "操作成功"),
            @ApiResponse(code = CommonStatus.EXCEPTION, message = "服務(wù)器內(nèi)部異常"),
            @ApiResponse(code = CommonStatus.FORBIDDEN, message = "權(quán)限不足") })
    @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", dataType = "Long", name = "id", value = "信息id", required = true) })
    @RequestMapping(value = "/remove.json", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
    public RestfulProtocol remove(Long id) {
    @ApiModelProperty(value = "標(biāo)題")
    private String  title;

@ApiImplicitParam

屬性取值作用
paramType 查詢參數(shù)類型
 path以地址的形式提交數(shù)據(jù)
 query直接跟參數(shù)完成自動(dòng)映射賦值
 body以流的形式提交 僅支持POST
 header參數(shù)在request headers 里邊提交
 form以form表單的形式提交 僅支持POST
dataType 參數(shù)的數(shù)據(jù)類型 只作為標(biāo)志說(shuō)明,并沒(méi)有實(shí)際驗(yàn)證
 Long 
 String 
name 接收參數(shù)名
value 接收參數(shù)的意義描述
required 參數(shù)是否必填
 true必填
 false非必填
defaultValue 默認(rèn)值

paramType 示例詳解

path

 @RequestMapping(value = "/findById1/{id}", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
 @PathVariable(name = "id") Long id

body

  @ApiImplicitParams({ @ApiImplicitParam(paramType = "body", dataType = "MessageParam", name = "param", value = "信息參數(shù)", required = true) })
  @RequestMapping(value = "/findById3", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
 
  @RequestBody MessageParam param

提交的參數(shù)是這個(gè)對(duì)象的一個(gè)json,然后會(huì)自動(dòng)解析到對(duì)應(yīng)的字段上去,也可以通過(guò)流的形式接收當(dāng)前的請(qǐng)求數(shù)據(jù),但是這個(gè)和上面的接收方式僅能使用一個(gè)(用@RequestBody之后流就會(huì)關(guān)閉了)    

接收對(duì)象傳參的例子

在POJO上增加

package com.zhongying.api.model.base; 
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
 
@ApiModel(value="對(duì)象模型")
public class DemoDoctor{
    @ApiModelProperty(value="id" ,required=true)
    private Integer id;
    @ApiModelProperty(value="姓名" ,required=true)
    private String name;    
    public Integer getId() {
        return id;
    }
 
    public void setId(Integer id) {
        this.id = id;
    }
 
    public String getName() {
        return name;
    }
 
    public void setName(String name) {
        this.name = name;
    }
 
    @Override
    public String toString() {
        return "DemoDoctor [id=" + id + ", name=" + name + "]";
    }    
}

注意: 在后臺(tái)采用對(duì)象接收參數(shù)時(shí),Swagger自帶的工具采用的是JSON傳參, 測(cè)試時(shí)需要在參數(shù)上加入@RequestBody,正常運(yùn)行采用form或URL提交時(shí)候請(qǐng)刪除。

header

  @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "Long", name = "id", value = "信息id", required = true) }) 
   String idstr = request.getHeader("id");
        if (StringUtils.isNumeric(idstr)) {
            id = Long.parseLong(idstr);
        }

Form

@ApiImplicitParams({ @ApiImplicitParam(paramType = "form", dataType = "Long", name = "id", value = "信息id", required = true) })
 @RequestMapping(value = "/findById5", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE, consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Spring中實(shí)現(xiàn)定時(shí)調(diào)度的幾種方法

    Spring中實(shí)現(xiàn)定時(shí)調(diào)度的幾種方法

    本篇文章主要介紹了Spring中實(shí)現(xiàn)定時(shí)調(diào)度示例,可以在無(wú)人值守的時(shí)候系統(tǒng)可以在某一時(shí)刻執(zhí)行某些特定的功能,有興趣的可以了解一下。
    2017-02-02
  • Java 進(jìn)階必備之ssm框架全面整合

    Java 進(jìn)階必備之ssm框架全面整合

    SSM框架是spring MVC ,spring和mybatis框架的整合,是標(biāo)準(zhǔn)的MVC模式,將整個(gè)系統(tǒng)劃分為表現(xiàn)層,controller層,service層,DAO層四層,使用spring MVC負(fù)責(zé)請(qǐng)求的轉(zhuǎn)發(fā)和視圖管理,spring實(shí)現(xiàn)業(yè)務(wù)對(duì)象管理,mybatis作為數(shù)據(jù)對(duì)象的持久化引擎
    2021-10-10
  • 淺析java修飾符訪問(wèn)權(quán)限(動(dòng)力節(jié)點(diǎn)Java學(xué)院整理)

    淺析java修飾符訪問(wèn)權(quán)限(動(dòng)力節(jié)點(diǎn)Java學(xué)院整理)

    Java有四種訪問(wèn)權(quán)限,其中三種有訪問(wèn)權(quán)限修飾符,分別為private,public和protected,還有一種不帶任何修飾符,下面通過(guò)本文給大家簡(jiǎn)單介紹下java修飾符訪問(wèn)權(quán)限相關(guān)知識(shí),感興趣的朋友一起學(xué)習(xí)吧
    2017-04-04
  • Java如何讀寫Properties配置文件(Properties類)

    Java如何讀寫Properties配置文件(Properties類)

    這篇文章主要介紹了Java如何讀寫Properties配置文件(Properties類),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • 詳解微信開(kāi)發(fā)之Author網(wǎng)頁(yè)授權(quán)

    詳解微信開(kāi)發(fā)之Author網(wǎng)頁(yè)授權(quán)

    微信開(kāi)發(fā)中,經(jīng)常有這樣的需求:獲得用戶頭像、綁定微信號(hào)給用戶發(fā)信息,那么實(shí)現(xiàn)這些的前提就是授權(quán)!本文對(duì)此進(jìn)行系統(tǒng)介紹,需要的朋友一起來(lái)看下吧
    2016-12-12
  • java實(shí)現(xiàn)多線程賣票功能

    java實(shí)現(xiàn)多線程賣票功能

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)多線程賣票功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-07-07
  • 解決SpringBoot ClassPathResource的大坑(FileNotFoundException)

    解決SpringBoot ClassPathResource的大坑(FileNotFoundException)

    這篇文章主要介紹了解決SpringBoot ClassPathResource的大坑(FileNotFoundException),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • spring boot空屬性賦值問(wèn)題與aspect日志實(shí)現(xiàn)方法

    spring boot空屬性賦值問(wèn)題與aspect日志實(shí)現(xiàn)方法

    這篇文章主要介紹了spring boot空屬性賦值問(wèn)題與aspect日志實(shí)現(xiàn)方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-08-08
  • java8中@Contended注解的使用

    java8中@Contended注解的使用

    本文主要介紹了java8中@Contended注解的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • 深入理解Java虛擬機(jī)之經(jīng)典垃圾收集器

    深入理解Java虛擬機(jī)之經(jīng)典垃圾收集器

    這篇文章主要介紹了深入理解Java虛擬機(jī)之經(jīng)典垃圾收集器的相關(guān)知識(shí),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-11-11

最新評(píng)論