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

Spring Boot2配置Swagger2生成API接口文檔詳情

 更新時(shí)間:2022年09月15日 14:09:02   作者:小二上酒8???????  
這篇文章主要介紹了Spring Boot2配置Swagger2生成API接口文檔詳情,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下

一、Swagger2介紹

前后端分離開(kāi)發(fā)模式中,api文檔是最好的溝通方式。

Swagger 是一個(gè)規(guī)范和完整的框架,用于生成、描述、調(diào)用和可視化 RESTful 風(fēng)格的 Web 服務(wù)。

  • 及時(shí)性(接口變更后,能夠及時(shí)準(zhǔn)確地通知相關(guān)前后端開(kāi)發(fā)人員)
  • 規(guī)范性(并且保證接口的規(guī)范性,如接口的地址,請(qǐng)求方式,參數(shù)及響應(yīng)格式和錯(cuò)誤信息)
  • 一致性(接口信息一致,不會(huì)出現(xiàn)因開(kāi)發(fā)人員拿到的文檔版本不一致,而出現(xiàn)分歧)
  • 可測(cè)性(直接在接口文檔上進(jìn)行測(cè)試,以方便理解業(yè)務(wù))

二、配置Swagger2

1、引入相關(guān)依賴(lài)

<!--swagger-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.7.0</version>
</dependency>
<!--swagger ui-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.7.0</version>
</dependency>

2、創(chuàng)建swagger的配置類(lèi)

@Configuration
@EnableSwagger2
public class SwaggerConfig {

@Bean
public Docket webApiConfig(){
return new Docket(DocumentationType.SWAGGER_2)
.groupName("webApi")
.apiInfo(webApiInfo())
.select()
.paths(Predicates.not(PathSelectors.regex("/admin/.*")))
.paths(Predicates.not(PathSelectors.regex("/error.*")))
.build();

}

private ApiInfo webApiInfo(){
return new ApiInfoBuilder()
.title("XX平臺(tái)API文檔")
.description("本文檔描述了xxx接口定義")
.version("1.0")
// 創(chuàng)建人
.contact(new Contact("Jade", "http://jade.com", "55317362@qq.com"))
.build();
}
}

3、在啟動(dòng)類(lèi)上添加注解掃描swagger的配置類(lèi),進(jìn)行測(cè)試

要能掃描到swagger的配置類(lèi)SwaggerConfig

@SpringBootApplication
// 要能掃描到swagger的配置類(lèi)SwaggerConfig
@ComponentScan(basePackages = {"com.jade"})
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}

4、API模型

可以添加一些自定義設(shè)置,例如:

定義樣例數(shù)據(jù)

@ApiModelProperty(value = "創(chuàng)建時(shí)間", example = "2019-01-01 8:00:00")
@TableField(fill = FieldFill.INSERT)
private Date gmtCreate;

@ApiModelProperty(value = "更新時(shí)間", example = "2019-01-01 8:00:00")
@TableField(fill = FieldFill.INSERT_UPDATE)
private Date gmtModified;

5、定義接口說(shuō)明和參數(shù)說(shuō)明

  • 定義在類(lèi)上:@Api
  • 定義在方法上:@ApiOperation
  • 定義在參數(shù)上:@ApiParam
@Api(description="講師管理")
@RestController
@RequestMapping("/admin/edu/teacher")
public class TeacherAdminController {

@Autowired
private TeacherService teacherService;

@ApiOperation(value = "所有講師列表")
@GetMapping
public List<Teacher> list(){
return teacherService.list(null);
}

@ApiOperation(value = "根據(jù)ID刪除講師")
@DeleteMapping("{id}")
public boolean removeById(
@ApiParam(name = "id", value = "講師ID", required = true)
@PathVariable String id){
return teacherService.removeById(id);
}
}

6、測(cè)試,查看效果

訪問(wèn)http://localhost:8080/swagger-ui.html 即可

到此這篇關(guān)于Spring Boot2配置Swagger2生成API接口文檔詳情的文章就介紹到這了,更多相關(guān)Spring Boot2生成API接口文檔內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • spring @Component注解原理解析

    spring @Component注解原理解析

    這篇文章主要介紹了spring @Component注解原理解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • Springboot集成ProtoBuf的實(shí)例

    Springboot集成ProtoBuf的實(shí)例

    這篇文章主要介紹了Springboot集成ProtoBuf的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • Mybatis中如何設(shè)置sqlSession自動(dòng)提交

    Mybatis中如何設(shè)置sqlSession自動(dòng)提交

    在MyBatis中,默認(rèn)情況下,獲取的SqlSession對(duì)象不會(huì)自動(dòng)提交事務(wù),這意味著在進(jìn)行更新、刪除或插入等操作后,需要顯式調(diào)用commit方法來(lái)提交事務(wù),但是,可以在獲取SqlSession時(shí)通過(guò)將openSession方法的參數(shù)設(shè)置為true
    2024-09-09
  • SpringBoot整合ip2region獲取客戶端IP地理位置信息

    SpringBoot整合ip2region獲取客戶端IP地理位置信息

    在我們?nèi)粘EB開(kāi)發(fā)工作中,經(jīng)常會(huì)有需要獲取客戶端地理位置的需求,本文主要介紹了SpringBoot整合ip2region獲取客戶端IP地理位置信息,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-08-08
  • java調(diào)用微信現(xiàn)金紅包接口的心得與體會(huì)總結(jié)

    java調(diào)用微信現(xiàn)金紅包接口的心得與體會(huì)總結(jié)

    這篇文章主要介紹了java調(diào)用微信現(xiàn)金紅包接口的心得與體會(huì)總結(jié),有需要的朋友可以了解一下。
    2016-11-11
  • Java之Thread的join方法實(shí)例

    Java之Thread的join方法實(shí)例

    這篇文章主要介紹了Java之Thread的join方法,實(shí)例形式講述了join方法的應(yīng)用,需要的朋友可以參考下
    2014-10-10
  • Spring中的事件監(jiān)聽(tīng)器使用學(xué)習(xí)記錄

    Spring中的事件監(jiān)聽(tīng)器使用學(xué)習(xí)記錄

    Spring框架中的事件監(jiān)聽(tīng)機(jī)制是一種設(shè)計(jì)模式,它允許你定義和觸發(fā)事件,同時(shí)允許其他組件監(jiān)聽(tīng)這些事件并在事件發(fā)生時(shí)作出響應(yīng),這篇文章主要介紹了Spring中的事件監(jiān)聽(tīng)器使用學(xué)習(xí),需要的朋友可以參考下
    2024-07-07
  • Java基礎(chǔ)教程之類(lèi)數(shù)據(jù)與類(lèi)方法

    Java基礎(chǔ)教程之類(lèi)數(shù)據(jù)與類(lèi)方法

    這篇文章主要介紹了Java基礎(chǔ)教程之類(lèi)數(shù)據(jù)與類(lèi)方法,本文是對(duì)類(lèi)的深入探討,類(lèi)數(shù)據(jù)指類(lèi)的一些屬性、參數(shù)等,類(lèi)方法就是類(lèi)包含的功能方法,需要的朋友可以參考下
    2014-08-08
  • 總結(jié)Java對(duì)象被序列化的兩種方法

    總結(jié)Java對(duì)象被序列化的兩種方法

    今天給大家?guī)?lái)的是關(guān)于Java的相關(guān)知識(shí),文章圍繞著Java對(duì)象被序列化的兩種方法展開(kāi),文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • mybatis中關(guān)于type-aliases-package的使用

    mybatis中關(guān)于type-aliases-package的使用

    這篇文章主要介紹了mybatis中關(guān)于type-aliases-package的使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08

最新評(píng)論