如何在SpringBoot中对Swagger进行配置?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
<!--web方便测试--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- swagger2核心包 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> </dependency> <!-- swagger-ui 可视化界面 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.2</version> </dependency>
Swagger可视化界面可分为三个区域
Swagger相关配置
package com.example.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import springfox.documentation.builders.RequestHandlerSelectors; import springfox.documentation.service.ApiInfo; import springfox.documentation.service.Contact; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket; import springfox.documentation.swagger2.annotations.EnableSwagger2; import java.util.ArrayList; @Configuration @EnableSwagger2 //开启Swagger的使用 public class SwaggerConfig { @Bean //Swagger的使用主要是要将docket对象传入IOC容器 public Docket docket(){ return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) //关于文档的各种信息 .enable(true) //使Swagger生效 .groupName("常安祖") .select()//选择扫描的接口 .apis(RequestHandlerSelectors.basePackage("com.example.controller"))//指定扫描的接口 .build(); } public ApiInfo apiInfo(){ Contact contact = new Contact("长安","https://blog.csdn.net/weixin_45647685","719801748@qq.com");//个人的联系方式 return new ApiInfo("长安的文档", "长安的开发文档", "1.0", "urn:tos",null, "Apache 2.0", "http://www.apache.org/licenses/LICENSE-2.0", new ArrayList());//文档的各种信息 } }
@ApiModel( ) //主要用来标注返回的实体类
@ApiModelProperty( ) //主要用来标注实体类中的属性
案例:
@ApiModel("用户的实体类") public class User implements Serializable { @ApiModelProperty("用户的id") private Integer id; @ApiModelProperty("用户的姓名") private String name; @ApiModelProperty("用户的年纪") private Integer age; public Integer getId() { return id; } public User(Integer id, String name, Integer age) { this.id = id; this.name = name; this.age = age; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } }
@ApiModelProperty用来标注API接口
案例:
package com.yangzihao.controller; import com.yangzihao.entity.User; import io.swagger.annotations.ApiModelProperty; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; @RestController public class UserController { @ApiModelProperty("得到一个User") @GetMapping("/getUser") public User getUser(){ return new User(1,"测试",18); } }
关于如何在SpringBoot中对Swagger进行配置问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。