导入依赖
<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>
定义配置类
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
@Primary
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
// 指定构建api文档的详细信息的方法:apiInfo()
.apiInfo(apiInfo())
.select()
// 指定要生成api接口的包路径,这里把controller作为包路径,生成controller中的所有接口
.apis(RequestHandlerSelectors.basePackage("com.example.shiro.controller"))
.paths(PathSelectors.any())
.build();
}
/**
* 构建api文档的详细信息
* @return
*/
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
// 设置页面标题
.title("Spring Boot集成Swagger2接口总览")
// 设置接口描述
.description("Swagger2-description")
// 设置联系方式
.contact("星球:" + "99999")
// 设置版本
.version("1.0")
// 构建
.build();
}
}
实体类相关注释
@ApiModel
public class User {
@ApiModelProperty("用户名")
private String username;
@ApiModelProperty("用户密码")
private String password;
@ApiModelProperty("性别")
private String sex;
public User(String username, String password, String sex) {
this.username = username;
this.password = password;
this.sex = sex;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
为接口添加相关注释
@RestController
@Api("sagger测试接口")
public class SwaggerController {
@GetMapping("/swagger")
@ApiOperation("swagger test 接口")
public User test() {
return new User("雄鱼","paasss","nan");
}
}
启动SpringBoot,测试