return “hello”;
}
}
浏览器:
正常运行!
4.使用Swagger,需要编写一个配置类-SwaggerConfig来配置 Swagger
@Configuration //配置类
@EnableSwagger2// 开启Swagger2的自动配置
public class SwaggerConfig {
}
5.测试进入Sawgger页面
重启主程序,访问 localhost:8080/swagger-ui.html
发现启动报错:
原因:是因为我们的SpringBoot版本过高
org.springframework.boot
spring-boot-starter-parent
2.6.2
将其版本降低即可,改为2.5.4
org.springframework.boot
spring-boot-starter-parent
2.5.4
我们重启主程序,访问 localhost:8080/swagger-ui.html
出现以下页面说明访问成功了。
这个界面是Swagger为我们提供的ui界面,我们可以在源码中找到它
四、配置Swagger API信息
=================
(1)Swagger实例Bean是Docket,所以通过配置Docket实例来配置Swaggger。
@Bean //配置docket以配置Swagger具体参数
public Docket docket() {
return new Docket(DocumentationType.SWAGGER_2);
}
(2)通过apiInfo()属性配置文档信息
//配置文档信息
private ApiInfo apiInfo() {
Contact contact = new Contact(“联系人名字”, “http://xxx.xxx.com/联系人访问链接”, “联系人邮箱”);
return new ApiInfo(
“Swagger学习”, // 标题
“学习演示如何配置Swagger”, // 描述
“v1.0”, // 版本
“http://terms.service.url/组织链接”, // 组织链接
contact, // 联系人信息
“Apach 2.0 许可”, // 许可
“许可链接”, // 许可连接
new ArrayList<>()// 扩展
);
}
(3)Docket 实例关联上 apiInfo()
@Bean //配置docket以配置Swagger具体参数
public Docket docket() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo());//配置Swagger信息;
}
重启主程序测试,可以看到Swagger信息已经变更成我们定义的信息
五、配置Swagger自定义扫描接口
==================
5.1 默认状态
我们在这个ui界面中,可以看到扫描了两个controller接口;
一个是默认的/error请求,也就是我们启动springboot主程序未加配置默认访问8080端口的默认controller
另一个是我们自己写的/test请求,对应着MyController,由于我们用的@RequsetMapping注解,所以请求的方式有以上的六种
@RestController
public class MyController {
@RequestMapping(“/test”)
public String test(){
return “hello”;
}
}
5.2 配置扫描接口
(1)构建Docket时通过select()方法配置扫描接口。
@Bean
public Docket docket() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())//配置Swagger信息
.select()
/**
-
apis():指定扫描的接口
-
RequestHandlerSelectors:配置要扫描接口的方式
-
basePackage:指定要扫描的包
-
any:扫面全部
-
none:不扫描
-
withClassAnnotation:扫描类上的注解(参数是类上注解的class对象)
-
withMethodAnnotation:扫描方法上的注解(参数是方法上的注解的class对象)
*/
.apis(RequestHandlerSelectors.basePackage(“com.yixin.demo.controller”)
.build();
}
(2) 重启项目测试,