添加swagger依赖springfox,添加knife4j依赖
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>3.0.2</version>
</dependency>
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-openapi3-spring-boot-starter</artifactId>
<version>4.0.0</version>
</dependency>
接口代码,文档空格使用全角格式的空格
import javax.validation.Valid;
import java.util.List;
import java.util.Set;
import com.google.common.collect.Sets;
import io.swagger.annotations.ApiOperation;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
@Tag(name = "xx接口", description = "xxxxxController")
@RestController
@RequestMapping("/xx")
public class xxxxxController {
@ApiOperation(tags = "xx接口", value = "xx",
notes = "功能:xxxxx。 \n" +
"业务逻辑: \n" +
" xxxxx”。 \n" +
"备注: \n" +
" xxxxxx")
@PostMapping(value = "/xxx/xx")
public ResponseEntity<XXResponse> xxx(@RequestBody @Valid XXRequest xxRequest) {
return ResponseEntity.status(HttpStatus.CREATED)
.body(xxService.xxx(xxRequest));
}
}
使用knief访问
在接口代码中有接口描述,可以借助基于swagger的knife4j自动生成接口文档说明。
http://localhost:8080/xxx/doc.html#/home
支持MarkDown、html、word、openApi 4种格式的接口文档
也支持原有的swagger访问
http://localhost:8080/xxxx/swagger-ui/#/