一、zuul网关服务中配置swagger
1.1、pom.xml导入springcloud的swagger包
<dependency>
<groupId>com.spring4all</groupId>
<artifactId>swagger-spring-boot-starter</artifactId>
<version>1.9.0.RELEASE</version>
</dependency>
1.2、yml配置文件中不需要添加
1.3、主配置类中添加注解@EnableSwagger2Doc
1.4、主配置类中添加以下代码
@SpringBootApplication
@EnableEurekaClient
@EnableZuulProxy
@EnableSwagger2Doc
//@ServletComponentScan
public class SpringcloudZuulGatewayApplication {
public static void main(String[] args) {
SpringApplication.run(SpringcloudZuulGatewayApplication.class, args);
}
@RefreshScope
public ZuulProperties zuulProperties(){
return new ZuulProperties();
}
@Component
@Primary
class DocumentationConfig implements SwaggerResourcesProvider {
@Override
public List<SwaggerResource> get() {
List resources = new ArrayList();
resources.add(swaggerResource("service-member服务Api","/service-member/v2/api-docs","2.0"));
resources.add(swaggerResource("service-order服务Api","/service-order/v2/api-docs","2.0"));
return resources;
}
private SwaggerResource swaggerResource(String name, String location, String version) {
SwaggerResource swaggerResource = new SwaggerResource();
swaggerResource.setName(name);
swaggerResource.setLocation(location);
swaggerResource.setSwaggerVersion(version);
return swaggerResource;
}
}
}
注意:resources.add(swaggerResource("service-member服务Api","/service-member/v2/api-docs","2.0"));前面的是ui界面名称,后面的service-member是服务名
1.5、如果有token验证,先注释掉,以免访问不到
1.6、运行链接测试zuul搭建成功:http://127.0.0.1:8080/swagger-ui.html
这个是找不到服务,先往下搭建,你只启动了eureka服务呢(eureka缓存默认30秒刷新)
二、order和member等业务服务配置swagger
2.1、pom.xml导入springcloud的swagger包
<!--swagger-->
<dependency>
<groupId>com.spring4all</groupId>
<artifactId>swagger-spring-boot-starter</artifactId>
<version>1.9.0.RELEASE</version>
</dependency>
2.2、yml配置文件——需要扫的包,一般是controller
#swagger
swagger.base-package=com.example.controller
2.3、主配置类中
@EnableSwagger2Doc
2.4、controller
2.4.1、加入@Api("会员服务接口")注解
2.4.2、加入测试接口,getMember接口和参数配置
@RestController
@Api("会员服务接口")
public class UserController {
@Autowired
private IUserService iUserService;
@ApiOperation(value = "获取会员相关信息",notes = "提示接口使用者注意事项",httpMethod = "GET")
@ApiImplicitParam(dataType = "string",name = "userName",value = "用户参数",required = true)
@RequestMapping(value = "/getMember")
public String getMember(String userName) {
return "hello "+ userName;
}
}
2.5、运行链接测试order、member等服务,再访问:http://127.0.0.1:8080/swagger-ui.html
搭建成功
三、