org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-test
test
io.springfox
springfox-swagger2
2.9.2
io.springfox
springfox-swagger-ui
2.9.2
org.projectlombok
lombok
2.创建Swagger配置类
package cn.bloghut.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.service.VendorExtension;
import springfox.documentation.spi.documentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
import java.util.ArrayList;
@EnableSwagger2
@Configuration
public class SwaggerConfig {
@Bean
public Docket docket(){
return new Docket(documentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()//RequestHandlerSelectors 配置要扫描解接口的方式
//basePackage 指定要扫描的包
//any():扫描全部
//none():不扫码
//withClassAnnotation:扫描类上的注解,参数是注解的反射对象
//withMethodAnnotation:扫描方法上的注解
//withClassAnnotation(RestController.class) 只会扫描类上有RestController 注解的类
.apis(RequestHandlerSelectors.basePackage("cn.bloghut.controller"))
//paths() 过滤路径
.paths(PathSelectors.ant("
public ApiInfo apiInfo(){
Contact contact = new Contact("闲言","http://www.bloghut.cn","1765736057@qq.com");
return new ApiInfo(
"闲言的Swagger Api 文档",
"即使再小的帆也能远航",
"v1.0",
"http://www.bloghut.cn",
contact,
"Apache 2.0",
"http://www.apache.org/licenses/LICENSE-2.0",
new ArrayList());
}
}
3.创建实体类
@Data
@ApiModel("老师实体类")
@Api("注释信息")
public class User {
@ApiModelProperty("用老师D")
private int id;
@ApiModelProperty("老师名")
private String name;
}
4.编写控制器
@RestController
@RequestMapping("teacher")
public class TeacherController {
@GetMapping("findAll")
@ApiOperation("方法注释查询所有老师方法")
public Object findAll(){
return "Hello SpringBoot!";
}
@PostMapping("add")
@ApiOperation("方法注释添加所有老师方法")
public Object add(@ApiParam("用户")User user){
return "Hello SpringBoot!";
}
@PutMapping("update")
@ApiOperation("方法注释修改所有老师方法")
public Object update(){
return "Hello SpringBoot!";
}
@DeleteMapping("delete")
@ApiOperation("方法注释删除所有老师方法")
public Object delete(){
return "Hello SpringBoot!";
}
}
UserController和StudentController未展示
5.测试
1.访问地址
http://localhost/swagger-ui.html
注意:这里我改了端口为80,所以不用显示输入端口
2.跳转到首页
3.查看TeacherController的信息
4.查看add方法
5.完结,主要的代码还是在Swagger配置,其他都是加注解就行了



