解決springboot引入swagger2不生效問題_第1頁
解決springboot引入swagger2不生效問題_第2頁
解決springboot引入swagger2不生效問題_第3頁
解決springboot引入swagger2不生效問題_第4頁
解決springboot引入swagger2不生效問題_第5頁
全文預覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第解決springboot引入swagger2不生效問題目錄問題描述:springboot引入swagger2的步驟:①引入依賴②編寫Swagger2的配置類③在controller中添加注解:按需添加注解④在model(pojo)上加注解,按需添加一些注解的使用今天遇到跟同事遇到一個由于失誤導致的問題,也可以說比較難發(fā)現(xiàn)了.在此記錄一下(我們用的springboot是2.0.3,swagger是2.2.2)

問題描述:

swagger修改title,description等都不生效。并且啟動springboot,沒有有去加載swagger的配置類。(在debug模式啟動)

經(jīng)過不斷的查找,發(fā)現(xiàn)了原因是:swagger的配置類的注解加錯了。@Configuration不小心寫成了@Configurable.

還有就是@EnableSwagger2注解只需要加在swagger配置類上

springboot引入swagger2的步驟:

①引入依賴

!--引入swagger包--

dependency

groupIdio.springfox/groupId

artifactIdspringfox-swagger2/artifactId

version2.2.2/version

/dependency

dependency

groupIdio.springfox/groupId

artifactIdspringfox-swagger-ui/artifactId

version2.2.2/version

/dependency

②編寫Swagger2的配置類

@Configuration

@EnableSwagger2

publicclassSwagger2Config{

@Bean

publicDocketapi(){

returnnewDocket(DocumentationType.SWAGGER_2)

.apiInfo(getApiInfo())

.select()

.apis(RequestHandlerSelectors.basePackage("com.xx.controller"))

.paths(PathSelectors.any())

.build();

privateApiInfogetApiInfo(){

returnnewApiInfoBuilder()

.title("Swagger2....")

.description("Swagger2")

.version("1.0")

.license("Apache2.0")

.licenseUrl("/licenses/LICENSE-2.0")

.build();

③在controller中添加注解:按需添加注解

@Controller

@RequestMapping("/user")

@Api(tags="我的接口模塊")

publicclassUserController{

@Autowired

privateUserServiceuserService;

//注意這個注解跟請求對應的@XxxMapping,要不然這個接口會生成好多方法

@GetMapping(value="/getUserById")

@ResponseBody

@ApiOperation(value="根據(jù)ID查詢User")

publicUsergetUserById(@RequestParam(value="id")intid){

returnuserService.getUserById(id);

④在model(pojo)上加注解,按需添加

@ApiModel(value="用戶對象")

publicclassUser{

@ApiModelProperty(value="用戶ID",name="userId")

privateIntegeruserId;

@ApiModelProperty(value="用戶姓名",name="userName")

privateStringuserName;

@ApiModelProperty(value="用戶密碼",name="password")

privateStringpassword;

@ApiModelProperty(value="用戶手機號",name="phone")

privateStringphone;

一些注解的使用

@Api:一般用于Controller中,用于接口分組

@ApiOperation:接口說明,用于api方法上。

@ApiImplicitParams:用在方法上包含一組參數(shù)說明

@ApiImplicitParam:用在@ApiImplicitParams注解中,指定一個請求參數(shù)的各個方面

paramType:參數(shù)放在哪個地方

header請求參數(shù)的獲?。篅RequestHeader

query請求參數(shù)的獲?。篅RequestParam

path(用于restful接口)請求參數(shù)的獲取:@PathVariable

body(不常用)

form(不常用)

name:參數(shù)名

dataType:參數(shù)類型

required:參數(shù)是否必須傳

value:參數(shù)的意思

defaultValue:參數(shù)的默認值

@ApiResponses:用于表示一組響應

@ApiResponse:用在@ApiResponses中,一般用于表達一個錯誤的響應信息

code:數(shù)字,例如400

message:信息#xff0c;例如請求參數(shù)沒填好

response:拋出異常的類

@ApiModel:描述一個Model的信息(這種一般用在post創(chuàng)建的時候,使用@RequestBody這樣的場景,請求參數(shù)無法使用@ApiImplicitParam注解進行描述的時候)表明這是一個被swagger

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論