您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關在SpringBoot環境如何實現整合Swagger2,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
一、導入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 @EnableSwagger2 public 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; } }
四、注解說明
五、如果參數是一個對象,對于參數的描述可以放在實體類中。
@ApiModel public class User { @ApiModelProperty(value = "用戶id") private Integer id; @ApiModelProperty(value = "用戶名") private String username; @ApiModelProperty(value = "用戶地址") private String address; //getter/setter }
六、效果
附:如果我們的Spring Boot項目中集成了Spring Security,那么如果不做額外配置,Swagger2文檔可能會被攔截,此時只需要在Spring Security的配置類中重寫configure方法,添加如下過濾即可:
@Override public void configure(WebSecurity web) throws Exception { web.ignoring() .antMatchers("/swagger-ui.html") .antMatchers("/v2/**") .antMatchers("/swagger-resources/**"); }
以上就是在SpringBoot環境如何實現整合Swagger2,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。