4 springboot 集成swagger2
2018-12-24 09:09:07来源:博客园 阅读 ()
Swagger:实时生成在线接口文档,方便测试和沟通
官网地址:https://swagger.io/
引入依赖
1 <dependency> 2 <groupId>io.springfox</groupId> 3 <artifactId>springfox-swagger2</artifactId> 4 <version>2.9.2</version> 5 </dependency> 6 <dependency> 7 <groupId>io.springfox</groupId> 8 <artifactId>springfox-swagger-ui</artifactId> 9 <version>2.9.2</version> 10 </dependency>
在somefun-web模块中创建包 com.zhj.somefun.web.configurer
创建类Swagger2Config
一定要在启动类SomefunWebApplication能扫描的到的包下
1 @Configuration 2 @EnableSwagger2 3 @Profile({"dev","test"}) // 表示只在开发和测试环境中使用 4 public class Swagger2Config { 5 6 @Bean 7 public Docket createRestApi() { 8 return new Docket(DocumentationType.SWAGGER_2) 9 .apiInfo(apiInfo()) 10 .select() 11 // 只有Api注解的方法才会生成文档 12 .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)) 13 //这个包下的控制器才会生成文档 14 .apis(RequestHandlerSelectors.basePackage("com.zhj.somefun.web.controller")) 15 .paths(PathSelectors.any()) 16 .build(); 17 } 18 19 private ApiInfo apiInfo() { 20 return new ApiInfoBuilder() 21 .title("测试平台") 22 .version("1.0") 23 .description("描述") 24 .build(); 25 } 26 }
创建测试控制器类 LoginController
1 @RestController 2 @RequestMapping("/login") 3 @Api("登录相关的api") 4 public class LoginController { 5 6 @ApiOperation("登录接口") 7 @ApiImplicitParams({ 8 @ApiImplicitParam(name = "username", value = "用户名", required = true, dataType = "String"), 9 @ApiImplicitParam(name = "password", value = "密码", required = true, dataType = "String") 10 }) 11 @PostMapping("/login") 12 public String login(@RequestParam("username") String username, 13 @RequestParam("password") String password) { 14 return "ok"; 15 } 16 17 @ApiOperation("退出登录接口") 18 @PostMapping("/loginout") 19 public String loginout() { 20 return "ok"; 21 } 22 23 }
我们运行项目 访问http://localhost:8001/swagger-ui.html
我们可以再次测试下将application.yml文件中的active值改为prod,然后在启动项目会发现无法在进入此页面。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- springboot2配置JavaMelody与springMVC配置JavaMelody 2020-06-11
- SpringBoot 2.3 整合最新版 ShardingJdbc + Druid + MyBatis 2020-06-11
- 掌握SpringBoot-2.3的容器探针:实战篇 2020-06-11
- nacos~配置中心功能~springboot的支持 2020-06-10
- SpringBoot + Vue + ElementUI 实现后台管理系统模板 -- 后 2020-06-10
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash