1添加pom
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.8.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.8.0</version>
</dependency>
2编写配置类
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
//swagger要扫描的包路径
.apis(RequestHandlerSelectors.basePackage("com.learn.springboot.controller"))
.paths(PathSelectors.any())
.build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("springboot Swagger 测试")
.description("Springboot 整合Swagger2")
.termsOfServiceUrl("localhost:8080/")
.contact(new Contact("Swagger测试","liflag.cn","229670104@qq.com"))
.version("1.0")
.build();
}
}
3 添加注解
@Api(value = "测试接口")
@Controller
public class HelloController {
@Autowired
UserMapper userMapper;
@ApiOperation(value = "测试借口", notes = "访问hello")
@ApiImplicitParam(name = "id", value = "用户id", required=true, dataType = "String")
@RequestMapping("/hello")
@ResponseBody
public String hello(String id) {
User user = userMapper.selectByPrimaryKey(Integer.valueOf(id));
System.out.println(user.getName());
return "helloWorld "+ user.getName();
}
}
4 访问接口文档
swagger说明
常用注解
- @Api()用于类; 表示标识这个类是swagger的资源
- @ApiOperation()用于方法; 表示一个http请求的操作
- @ApiParam()用于方法,参数,字段说明; 表示对参数的添加元数据(说明或是否必填等)
- @ApiModel()用于类 表示对类进行说明,用于参数用实体类接收
- @ApiModelProperty()用于方法,字段 表示对model属性的说明或者数据操作更改
- @ApiIgnore()用于类,方法,方法参数 表示这个方法或者类被忽略
- @ApiImplicitParam() 用于方法 表示单独的请求参数
- @ApiImplicitParams() 用于方法,包含多个 @ApiImplicitParam
例子https://www.cnblogs.com/mao2080/p/9021714.html
注意:本文归作者所有,未经作者允许,不得转载