欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SpringBoot项目使用Swagger自动生成api文档

程序员文章站 2022-07-02 21:48:09
...

一.在pom.xml文件中添加对应依赖

    <!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 -->
    <dependency>
      <groupId>io.springfox</groupId>
      <artifactId>springfox-swagger2</artifactId>
      <version>2.7.0</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger-ui -->
    <!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger-ui -->
    <dependency>
      <groupId>io.springfox</groupId>
      <artifactId>springfox-swagger-ui</artifactId>
      <version>2.7.0</version>
    </dependency>

二.在项目中创建Swagger配置类

 @Configuration
@EnableSwagger2
public class Swagger2 {

    /**
     * @Description:swagger2的配置文件,这里可以配置swagger2的一些基本的内容,比如扫描的包等等
     */
    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select()
                .apis(RequestHandlerSelectors.basePackage("***controller包的位置***"))
                .paths(PathSelectors.any()).build();
    }

    /**
     * @Description: 构建 api文档的信息
     */
    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                // 设置页面标题
                .title("标题")
                // 设置联系人
                .contact(new Contact("name", "url", "email"))
                // 描述
                .description("文档描述信息")
                // 定义版本号
                .version("1.0").build();
    }
}

这里即可运行项目访问http://localhost:8080/swagger-ui.html 查看生成的api界面

三.给每一个Controller类里添加对应的注解, 添加@Api(value = “用户业务接口”,tags = {“用户相关业务的controller”})


@Controller
@RequestMapping("/goods")
@Api(value = "商品业务",tags = {"商品详情"})
public class GoodsController {
****
***}

这时可再次访问http://localhost:8080/swagger-ui.html的api界面,很明显都变成了你刚才所加的内容


四.给每个controlle类里的接口起名字添加 @ApiOperation(value = “登录”)


@ApiOperation(value = "秒杀的商品列表")
    @RequestMapping("/to_list")

    public String list(Model model, MsUser user) {
        model.addAttribute("user",user);
        ***
        ***
        }

点击网页中的controller即可发现每一个接口也都有了注释


五.定义接口传递的参数的名称


  @ApiModel(value = "用户对象",description = "用户对象 ")
public class LoginVo {
    @NotNull
    @IsMobile
    @ApiModelProperty(value = "用户手机号",dataType = "String",required = true)
    private String mobile;
    @NotNull
    @Length(min = 32)
    @ApiModelProperty(value = "密码",dataType = "String",required = true)
    private String password;

@APi的即为注解


六.开始测试每一个接口


填入对应的字段
SpringBoot项目使用Swagger自动生成api文档
运行成功后的结果:
SpringBoot项目使用Swagger自动生成api文档

相关标签: 秒杀系统 java