日常的添加pom依赖:
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId>
<version>4.4.0</version>
</dependency>
然后再yml中配置:
# springdoc-openapi项目配置
springdoc:
swagger-ui:
path: /testApi.html # Swagger UI的访问路径
tags-sorter: alpha # 按字母顺序排序标签
operations-sorter: alpha # 按字母顺序排序操作
api-docs:
path: /api-docs
group-configs:
- group: 'default' # api 分组名称
paths-to-match: '/**'
packages-to-scan: com.lai.controller # 需要扫描接口包的路径
# knife4j的增强配置,不需要增强可以不配
knife4j:
enable: true
setting:
language: zh_cn
basic:
enable: true
# Basic认证用户名
username: GarveyLai
# Basic认证密码
password: Lai123456
后面在controller中配置一些参数注释看看效果:
@RestController
@RequestMapping("user")
@Tag(name = "user的接口")
public class UserController {
@Autowired
private UserMapper userMapper;
@Operation(summary = "根据userid获取用户名称")
@Parameter(name = "id",description = "用户的id",required = true)
@GetMapping("/user")
public String addUser(String id){
User user=userMapper.selectById(id);
return user.getName();
}
}
启动项目看看效果:
输入localhost:8888/testApi.html 发现他会让你登录账号,就用Knife4j中设置的,出现以下界面,成功。
其中注释请参考以下文档:
springboot3整合knife4j详细版,包会!(不带swagger2玩)-CSDN博客java - springboot整合knife4j,从此告别手写接口文档 - 个人文章 - SegmentFault 思否spingboot3集成swagger3/openapi3_springboot3 openapi-CSDN博客