SpringBoot集成Swagger


Swagger 是一款RESTFUL接口的文檔在線自動生成+功能測試功能軟件,它的源碼地址在github,源碼地址:https://github.com/swagger-api/swagger-ui

具體實現操作:

一,添加依賴

Swagger需要依賴兩個jar包,在pom.xml中添加如下坐標

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

二,創建配置類

Swagger需要一個配置類來進行對swagger的基本配置

配置類:


@Configuration
@EnableSwagger2
public class Swagger2 {

    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                //選擇controller包
                .apis(RequestHandlerSelectors.basePackage("com.shsxt.controller"))
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                //自定義信息可按需求填寫
                .title("Spring Boot中使用Swagger構建RESTful APIs")
                .description("測試")
                .termsOfServiceUrl("http://www.duanxiaowei.top")
                .contact("劉林林")
                .version("1.0")
                .build();
    }

}

 

啟動類:

@Controller
@SpringBootApplication
public class Application implements CommandLineRunner {

    @Autowired
    private User user;

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

    @Override
    public void run(String... strings) throws Exception {
        System.out.println(user.getUserId());
    }
}

 

三,啟動並訪問

 

啟動application 並訪問http://localhost:8088/swagger-ui.html

 

 

 

四,額外配置(非必需)

最常用的5個注解 主要用來對接口或參數做備注信息

@Api:修飾整個類,描述Controller的作用

@ApiOperation:描述一個類的一個方法,或者說一個接口

@ApiParam:單個參數描述

@ApiModel:用對象來接收參數

@ApiProperty:用對象接收參數時,描述對象的一個字段

 


@Api(value="用戶模塊")
@RestController
@RequestMapping("user")
public class UserController {
    
    @Autowired
    private UserService userService;

    @ApiOperation(value = "根據用戶id查詢用戶")
    @GetMapping("find/{id}")
    public User findById(@PathVariable Integer id) {
        User user = userService.findById(id);
        return user;
    }
    @ApiOperation(value = "修改用戶信息")
    @PutMapping("update")
    public String update(User user) {
        return "更新成功";
    }
    @ApiOperation(value = "添加用戶")

    @PostMapping("add")
    public String add( User user) {
        return "添加成功";
    }

    @ApiOperation(value = "刪除用戶")
    @DeleteMapping("delete/{id}")
    public String delete(
            @ApiParam(required=true, name="ID", value="編號")
            @PathVariable Integer id) {
        return "刪除成功";
    }

}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM