亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

SpringBoot整合Swagger2的示例

瀏覽:3日期:2023-04-10 18:53:33

一、導入maven包 

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

二、添加工具類

@Configuration@EnableSwagger2public class SwaggerConfig { @Bean public Docket createRestApi() { return new Docket(DocumentationType.SWAGGER_2).pathMapping('/').select().apis(RequestHandlerSelectors.basePackage('com.nvn.controller')).paths(PathSelectors.any()).build().apiInfo(new ApiInfoBuilder() .title('SpringBoot整合Swagger') .description('SpringBoot整合Swagger,詳細信息......') .version('1.0') .build()); }}

三、添加注解

@RestController@Api(tags = '用戶管理相關接口')@RequestMapping('/user')public class UserController { @PostMapping('/') @ApiOperation('添加用戶的接口') @ApiImplicitParams({ @ApiImplicitParam(name = 'username', value = '用戶名', defaultValue = '李四'), @ApiImplicitParam(name = 'address', value = '用戶地址', defaultValue = '深圳', required = true) } ) public RespBean addUser(String username, @RequestParam(required = true) String address) { return new RespBean(); } @GetMapping('/') @ApiOperation('根據id查詢用戶的接口') @ApiImplicitParam(name = 'id', value = '用戶id', defaultValue = '99', required = true) public User getUserById(@PathVariable Integer id) { User user = new User(); user.setId(id); return user; } @PutMapping('/{id}') @ApiOperation('根據id更新用戶的接口') public User updateUserById(@RequestBody User user) { return user; }}

四、注解說明

@Api注解可以用來標記當前Controller的功能。 @ApiOperation注解用來標記一個方法的作用。 @ApiImplicitParam注解用來描述一個參數,可以配置參數的中文含義,也可以給參數設置默認值,這樣在接口測試的時候可以避免手動輸入。 如果有多個參數,則需要使用多個@ApiImplicitParam注解來描述,多個@ApiImplicitParam注解需要放在一個@ApiImplicitParams注解中。 @ApiImplicitParam注解中雖然可以指定參數是必填的,但是卻不能代替@RequestParam(required = true),前者的必填只是在Swagger2框架內必填,拋棄了Swagger2,這個限制就沒用了,所以假如開發者需要指定一個參數必填,@RequestParam(required = true)注解還是不能省略。

五、如果參數是一個對象,對于參數的描述可以放在實體類中。

@ApiModelpublic class User { @ApiModelProperty(value = '用戶id') private Integer id; @ApiModelProperty(value = '用戶名') private String username; @ApiModelProperty(value = '用戶地址') private String address; //getter/setter}

六、效果

SpringBoot整合Swagger2的示例

附:如果我們的Spring Boot項目中集成了Spring Security,那么如果不做額外配置,Swagger2文檔可能會被攔截,此時只需要在Spring Security的配置類中重寫configure方法,添加如下過濾即可:

@Overridepublic void configure(WebSecurity web) throws Exception { web.ignoring() .antMatchers('/swagger-ui.html') .antMatchers('/v2/**') .antMatchers('/swagger-resources/**');}

以上就是SpringBoot整合Swagger2的示例的詳細內容,更多關于SpringBoot整合Swagger2的資料請關注好吧啦網其它相關文章!

標簽: Spring
相關文章:
主站蜘蛛池模板: 欧美人与动物xx | 在线精品国精品国产不卡 | 国产综合影院 | 深夜爽爽福利gif在线观看 | 亚洲精品国产成人 | 久久久久久久久久免免费精品 | 91原创视频 | h版成版在线播放 | 1024手机在线基地 | 色综合久久中文综合网 | 国产精品第3页 | 久久毛片免费看一区二区三区 | 香蕉免费一级视频在线观看 | 麻豆传媒入口直接进入免费版 | 成人在线视频免费看 | xxxxxxx国产精品视频 | 多人性激烈的欧美三级视频 | 久热久色| 国产成人精品免费视频网页大全 | 91国内精品久久久久怡红院 | 上海麻豆文化传媒网站入口 | 日本无卡无吗中文免费 | 精品亚洲视频在线 | 亚洲精品福利在线 | 亚洲美女精品 | 日本一区二区三区久久精品 | 蜜桃一区 | 国产一级大片免费看 | 激情性生活视频在线播放免费观看 | 亚洲国产精品一区二区第一页 | 国产欧美日韩视频在线观看一区二区 | 国产拍拍1000部ww | 国产中文字幕第一页 | 国产在线一区二区三区四区 | 在线看片黄 | 69男女囗交动态图视频 | 青青青青久久久久国产的 | 无内丝袜透明在线播放 | 欧美草逼 | 大杳蕉伊人狼人久久一本线 | 国产xx做受视频国语对白 |