1:首先查看我的项目结构。
在common中引入依赖。
<!--swagger-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<scope>provided </scope>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<scope>provided </scope>
</dependency>
Swagger配置类
@Configuration//配置类
@EnableSwagger2 //swagger注解
public class SwaggerConfig {
@Bean
public Docket webApiConfig(){
return new Docket(DocumentationType.SWAGGER_2)
.groupName("webApi")
.apiInfo(webApiInfo())
.select()
.paths(Predicates.not(PathSelectors.regex("/admin/.*")))
.paths(Predicates.not(PathSelectors.regex("/error.*")))
.build();
}
private ApiInfo webApiInfo(){
return new ApiInfoBuilder()
.title("网站-课程中心API文档")
.description("本文档描述了课程中心微服务接口定义")
.version("1.0")
.contact(new Contact("dyk", "https://blog.csdn.net/qq_44866153", "2775194510@qq.com"))
.build();
}
}
?首先呢,他是两个模块之间得引用,所以必须得在引用者得pom.xml中进行引入。
1:在service_edu模块中引入,因为我这个外面还有一层service,专门来存jar包得,所以存入service中就好
<!-- 引入service_base依赖,使用其中得swagger-->
<dependency>
<groupId>com.xiaoze</groupId>
<artifactId>service_base</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
2:引入包之后,不能使用他,虽然加入了jar包,但是不可以扫描到这个swagger配置类,所以得加入扫描
@ComponentScan(basePackages = {"com.xiaoze"})
3:启动项目。访问地址? ??http://localhost:8081/swagger-ui.html#/? 就可以使用了。
4:swagger注解(一部分)
在controller类或者实体类添加接口注解
注解解释: - @Api()用于类; 表示标识这个类是swagger的资源 - @ApiOperation()用于方法; 表示一个http请求的操作 - @ApiParam()用于方法,参数,字段说明; 表示对参数的添加元数据(说明或是否必填等) - @ApiModel()用于类 表示对类进行说明,用于参数用实体类接收 - @ApiModelProperty()用于方法,字段 表示对model属性的说明或者数据操作更改 - @ApiIgnore()用于类,方法,方法参数 表示这个方法或者类被忽略 - @ApiImplicitParam() 用于方法 表示单独的请求参数 - @ApiImplicitParams() 用于方法,包含多个@ApiImplicitParam ?
|