javaee springboot-swagger

swagger-1.7 & swagger-2.2 使用方法

一、swagger-1.7

1.pom引用类库

    <!-- swagger -->
    <dependency>
      <groupId>com.spring4all</groupId>
      <artifactId>swagger-spring-boot-starter</artifactId>
      <version>1.7.1.RELEASE</version>
    </dependency>

2.启动程序添加注解 @EnableSwagger2Doc

@EnableSwagger2Doc
@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

}

3.控制器添加注解 @Api @ApiOperation

@Controller
@RequestMapping("/swagger")
@Api(value = "没有tags,value作为分组名称", tags = {"分组名称"}, description = "详细类描述")
public class SwaggerController {
    //http://127.0.0.1:8080/swagger-ui.html

    @RequestMapping("/test")
    @ResponseBody
    @ApiOperation(value="方法描述", notes="详细方法描述")
    public Result test(Category category) {
        return Result.suc();
    }

}

4.实体类添加注解 @ApiModel @ApiModelProperty

@Data
@ApiModel(value = "Category别名", description = "详细类描述")
public class Category {

    @ApiModelProperty(value = "id描述", example = "1")
    private int id;
    @ApiModelProperty(value = "name描述", example = "name1")
    private String name;

}

5.请求文档地址

http://127.0.0.1:8080/swagger-ui.html

 

二、swagger-2.2

1.pom引用类库

    <!-- swagger -->
    <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>

2.配置类

@Configuration
@EnableSwagger2
public class SwaggerConfiguration {

    @Bean
    public Docket api() {
        return docket("api","com.demo.springboot.controller");
    }

    Docket docket(String groupName, String basePackage){
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .groupName(groupName)
                .select()
                .apis(RequestHandlerSelectors.basePackage(basePackage))
                .paths(PathSelectors.any())
                .build();
    }

    ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("demo系统")
                .description("demo系统描述")
                .termsOfServiceUrl("http://127.0.0.1:8080")
                .version("1.0")
                .build();
    }

}

3.控制器添加注解 @Api @ApiOperation 【与swagger-1.7一样

@Controller
@RequestMapping("/swagger")
@Api(value = "没有tags,value作为分组名称", tags = {"分组名称"}, description = "详细类描述")
public class SwaggerController {
    //http://127.0.0.1:8080/swagger-ui.html

    @RequestMapping("/test")
    @ResponseBody
    @ApiOperation(value="方法描述", notes="详细方法描述")
    public Result test(@RequestBody Category category) {
        return Result.suc();
    }

}

4.实体类添加注解 @ApiModel @ApiModelProperty 【与swagger-1.7一样

@Data
@ApiModel(value = "Category别名", description = "详细类描述")
public class Category {

    @ApiModelProperty(value = "id描述", example = "1")
    private int id;
    @ApiModelProperty(value = "name描述", example = "name1")
    private String name;

}

5.请求文档地址 【与swagger-1.7一样

http://127.0.0.1:8080/swagger-ui.html

 

posted @ 2021-10-25 15:27  by-lhc  阅读(31)  评论(0编辑  收藏  举报