您好,登錄后才能下訂單哦!
這篇文章主要介紹了spring cloud整合Swagger2如何構建RESTful服務的APIs,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
一、引入Swagger2依賴的jar包
<!-- swagger2 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.2.2</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.2.2</version> </dependency>
二、初始化Swagger2的配置
@Configuration @EnableSwagger2 // 啟用Swagger2 public class Swagger2 { @Bean public Docket createRestApi() {// 創建API基本信息 return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select() .apis(RequestHandlerSelectors.basePackage("com.chhliu.jpa"))// 掃描該包下的所有需要在Swagger中展示的API,@ApiIgnore注解標注的除外 .paths(PathSelectors.any()) .build(); } private ApiInfo apiInfo() {// 創建API的基本信息,這些信息會在Swagger UI中進行顯示 return new ApiInfoBuilder() .title("Spring Boot中使用Swagger2構建RESTful APIs")// API 標題 .description("rdcloud-jpa提供的RESTful APIs")// API描述 .contact("chhliu@")// 聯系人 .version("1.0")// 版本號 .build(); } }
注:該配置類需要在Application同級目錄下創建,在項目啟動的時候,就初始化該配置類
三、完善API文檔信息
public interface SonarControllerI { @ApiOperation(value="獲取項目組Sonar對應的Url信息", notes="根據id獲取項目組Sonar對應的Url信息")// 使用該注解描述接口方法信息 @ApiImplicitParams({ @ApiImplicitParam(name = "id", value = "SonarUrl表ID", required = true, dataType = "Long", paramType="path") })// 使用該注解描述方法參數信息,此處需要注意的是paramType參數,需要配置成path,否則在UI中訪問接口方法時,會報錯 @GetMapping("/get/{id}") SonarUrl get(@PathVariable Long id); @ApiOperation(value="獲取項目組Sonar對應的所有Url信息") @GetMapping("/get/all") List<SonarUrl> getAll(); }
注:paramType表示參數的類型,可選的值為"path","body","query","header","form"
四、完善返回類型信息
@Entity(name = "SONAR_URL") public class SonarUrl implements Serializable { /** * */ private static final long serialVersionUID = 1L; @ApiModelProperty(value="主鍵", hidden=false, notes="主鍵,隱藏", required=true, dataType="Long")// 使用該注解描述屬性信息,當hidden=true時,該屬性不會在api中顯示 @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; @ApiModelProperty(value="URL鏈接地址") @Column(name="URL") private String url; @ApiModelProperty(value="項目組") @Column(name="TEAM") private String team; @ApiModelProperty(value="部門") @Column(name="DEPARTMENT") private String department; ……省略getter,setter方法…… }
五、啟動應用
1、在瀏覽器中輸入:http://localhost:7622/swagger-ui.html
2、結果如下:
六、API文檔訪問與測試
Swagger除了提供API接口查看的功能外,還提供了調試測試功能
測試結果如下:
感謝你能夠認真閱讀完這篇文章,希望小編分享的“spring cloud整合Swagger2如何構建RESTful服務的APIs”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。