SpringBoot集成Swagger2的步骤

 1、添加依赖:首先要在pom.xml中添加Swagger2的依赖:

<!-- swagger依赖 -->
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger2</artifactId>
    <version>2.6.1</version>
</dependency>
<!-- 用于生成在线文档的 -->
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger-ui</artifactId>
    <version>2.6.1</version>
</dependency>

2、描述控制器类:

  (1)、创建一个简单的实体类,来存储数据:

public class Book {
    //属性
    private Integer bid;
    private String bname;
    private String bprotagonist;
    private String btype;
    
    public Book() {
        super();
    }
    public Book(Integer bid, String bname, String bprotagonist, String btype) {
        super();
        this.bid = bid;
        this.bname = bname;
        this.bprotagonist = bprotagonist;
        this.btype = btype;
    }
    public Integer getBid() {
        return bid;
    }
    public void setBid(Integer bid) {
        this.bid = bid;
    }
    public String getBname() {
        return bname;
    }
    public void setBname(String bname) {
        this.bname = bname;
    }
    public String getBprotagonist() {
        return bprotagonist;
    }
    public void setBprotagonist(String bprotagonist) {
        this.bprotagonist = bprotagonist;
    }
    public String getBtype() {
        return btype;
    }
    public void setBtype(String btype) {
        this.btype = btype;
    }
    @Override
    public String toString() {
        return "Book [bid=" + bid + ", bname=" + bname + ", bprotagonist=" + bprotagonist + ", btype=" + btype + "]";
    }
}

  (2)创建一个简单的控制器,来模拟数据展示效果:

/**
 * 控制器类
 */
@RestController
public class BookController {
    /**
     * 获取所有数据
     */
    @GetMapping("/get")
    public List<Book> getBook() {
        List<Book> books = new ArrayList<>();
        books.add(new Book(1, "花园宝宝", "哇卡", "动漫"));
        books.add(new Book(2, "斗破苍穹", "萧炎", "小说"));
        books.add(new Book(1, "庆余年", "范闲", "小说"));
        return books;
    }
    /**
     * 添加
     * @param book
     * @return
     */
    @GetMapping("/add")
    public Book addBook(Book book) {
        return book;
    }
    
}

3、编写Swagger2的配置类,扫描 SpringMVC 控制器:

  配置类中的代码大部分都是固定的,但要注意控制器的包名不能写错,复制完后建议使用【CTRL + SHITF + O】快捷键自动引入所需要的包:

/**
 * Swagger2配置类
 */
@Configuration    //标注为配置类
@EnableSwagger2 // 用于启动Swagger2 还可以写到App启动类上
public class Swagger2Config {
    
    @Bean
    public Docket createRestApi() {
        // 扫描控制器中 Swagger2 的注解, .apis里面的参数表示指定包
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()                             //控制器的包名                
                .apis(RequestHandlerSelectors.basePackage("com.szc.controller"))
                .paths(PathSelectors.any())
                .build();
    }

    // API 描述信息
    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("SprignBoot整合sawgger2在线Api文档")  //标题
                .description("描述文档的信息")  //描述
                .termsOfServiceUrl("https://baidu.com")  //网址
                .version("szc_1.0")  //版本
                .build();
    }

}

4、在App启动类中启动SpringBoot项目:

5、启动成功后,在浏览器地址栏输入http://localhost:8080/swagger-ui.html,就可以查看到了

 点开控制器名,就可以查看里面的方法了

 逐层点开方法,还可以查看方法需要的参数或返回的数据

猜你喜欢

转载自www.cnblogs.com/szcy/p/12509494.html