1.导入依赖
<dependency>
<groupId>com.spring4all</groupId>
<artifactId>spring-boot-starter-swagger</artifactId>
<version>1.5.1.RELEASE</version>
</dependency>
2.在启动类上添加@EnableSwagger2注解(到这里一般就可以启动访问http://localhost:你的端口号/swagger-ui.html)
@SpringBootApplication
@MapperScan("com.xiaowei.mapper")
@EnableSwagger2
public class WebApplication {
public static void main(String[] args) {
SpringApplication.run(WebApplication.class,args);
}
}
3.这一步是给api文档更加详细的配置
@RestController
@RequestMapping("/user")
@Api(tags = "用户控制器",description = "用户相关接口") //tags 控制器的名称 description控制器的描述
public class UserController {
@Autowired
private UserService userService;
@PostMapping("/login")
@ApiOperation(value = "用户登录接口",notes = "需要账号和密码") // value 接口的名称 notes接口的描述
public ResponseResult Login(@RequestBody UserDto userDto){
return userService.login(userDto);
}
}
![这是swagger的展示图片](https://img-blog.csdnimg.cn/0d40b20bdd2345b69c39a930c63c7271.png)
4.补充说明:如果您配置了过滤器或者拦截器请在配置中讲swagger的几个路径放开,这里以拦截器举例
@Configuration
public class LoginConfig implements WebMvcConfigurer {
@Autowired
private LoginInterceptor loginInterceptor;
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(loginInterceptor) //配置拦截器规则
.addPathPatterns("/**") //配置拦截路径 /** 为所有路径
.excludePathPatterns("/swagger-ui.html","/swagger-resources/**","/webjars/**") //我们使用swagger的时候也需要把swagger的所有路径放行
.excludePathPatterns("/user/login"); //配置放行路径,可以配置多个
}
}