赞
踩
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
1、Swagger是啥
Swagger 是一个用于生成、描述和调用 RESTful 接口的 Web 服务。通俗的来讲,Swagger 就是将项目中所有(想要暴露的)接口展现在页面上,并且可以进行接口调用和测试的服务。 Swagger 官网地址:https://swagger.io/
Swagger 有以下 3 个重要的作用:将项目中所有的接口展现在页面上,这样后端程序员就不需要专门为前端使用者编写专门的接口文档;当接口更新之后,只需要修改代码中的 Swagger 描述就可以实时生成新的接口文档了,从而规避了接口文档老旧不能使用的问题;通过 Swagger 页面,我们可以直接进行接口调用,方便我们开发。
1)在如依赖
- <dependency>
- <groupId>io.springfox</groupId>
- <artifactId>springfox-swagger2</artifactId>
- <version>2.9.2</version>
- </dependency>
-
- <dependency>
- <groupId>io.springfox</groupId>
- <artifactId>springfox-swagger-ui</artifactId>
- <version>2.9.2</version>
- </dependency>
- import org.springframework.web.bind.annotation.PostMapping;
- import org.springframework.web.bind.annotation.RestController;
-
- @RestController
- public class TestController {
-
- @PostMapping("/hello")
- public String hello(String str){
- return "hello,"+str;
- }
- }
- @Configuration
- @EnableSwagger2//开始Swagger2
- public class SwaggerConfig {
-
-
- //配置了Swagger 的Docket的bean实例
- @Bean
- public Docket docket(){
-
- ParameterBuilder ticketPar = new ParameterBuilder();
- List<Parameter> pars = new ArrayList<>();
- ticketPar.name("Authorization").description("token")//Token 以及Authorization 为自定义的参数,session保存的名字是哪个就可以写成那个
- .modelRef(new ModelRef("string")).parameterType("header")
- .required(false).build(); //header中的ticket参数非必填,传空也可以
- pars.add(ticketPar.build()); //根据每个方法名也知道当前方法在设置什么参数
-
- return new Docket(DocumentationType.SPRING_WEB)
- .apiInfo(apiInfo())
- .select()
- //RequestHandlerSelectors, 配置要扫描接口的方式
- //basePackage:指定要扫描的包
- //any():扫描全部
- //withClassAnnotation: 扫描类上的注解
- //withMethodAnnotation: 扫描方法上的注解
- .apis(RequestHandlerSelectors.basePackage("com.example.swagger.controller"))
- .build()
- .globalOperationParameters(pars);
- }
-
- //配置Swagger 信息=apiInfo
- private ApiInfo apiInfo(){
- return new ApiInfo(
- "Logistics Api",//文檔命名
- "test",//文檔描述
- "v1.0",//
- "http:127.0.0.1/",
- null,//contact
- "Apache 2.0",
- "http://www.apache.org/licenses/LICENSE-2.0",
- new ArrayList()
- );
- }
- }
注意!
注意!
注意!
把apis(RequestHandlerSelectors.basePackage("com.example.swagger.controller"))中的
“com.example.swagger.controller ”路径写成你自己的controller包的路径
在完成以上步骤之后点击运行,等运行完后再在浏览器中访问以下网址:
http://127.0.0.1:8080/swagger-ui.html#/
这里的端口要改为自己的端口。
效果如图所示
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。