Swagger
@Configuration
@EnableSwagger2
public class Swagger2 {
@Bean
public Docket createRestApi() {
ParameterBuilder tokenPar = new ParameterBuilder();
ParameterBuilder tokenPar1= new ParameterBuilder();
ParameterBuilder tokenPar2= new ParameterBuilder();
ParameterBuilder tokenPar3= new ParameterBuilder();
List<Parameter> pars = new ArrayList<Parameter>();
tokenPar.name("acctName").description("账户名").defaultValue("").modelRef(new ModelRef("string")).parameterType("header").required(false).build();
tokenPar1.name("token").description("令牌").defaultValue("").modelRef(new ModelRef("string")).parameterType("header").required(false).build();
tokenPar2.name("estateId").description("楼盘ID").defaultValue("").modelRef(new ModelRef("string")).parameterType("header").required(false).build();
tokenPar3.name("employeeId").description("发布人ID").defaultValue("").modelRef(new ModelRef("string")).parameterType("header").required(false).build();
pars.add(tokenPar.build());
pars.add(tokenPar1.build());
pars.add(tokenPar2.build());
pars.add(tokenPar3.build());
Docket docket = new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.basePackage("com.bdcourtyard"))
.paths(PathSelectors.ant("/**"))
.build()
.globalOperationParameters(pars)
.apiInfo(apiInfo());
return docket;
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
//页面标题
.title("CRM 系统 RESTful API")
//创建人
.contact(new Contact("Maxg", "", ""))
//版本号
.version("1.0")
//描述
.description("CRM 系统 RESTful API")
.build();
}
//swagger通过注解表明该接口会生成文档,包括接口名、请求方法、参数、返回信息的等等。
@Api(value="xxxController",description="客户信息管理"):修饰整个类,描述Controller的作用
@ApiOperation(value="新增客户",notes=""):描述一个类的一个方法,或者说一个接口
@ApiModelProperties(values="客户类型 1:意向 2:无效")//实体类注解
@ApiParam:单个参数描述
@ApiModel:用对象来接收参数
@ApiProperty:用对象接收参数时,描述对象的一个字段
@ApiResponse:HTTP响应其中1个描述
@ApiResponses:HTTP响应整体描述
@ApiIgnore:使用该注解忽略这个API
@ApiError :发生错误返回的信息
@ApiImplicitParam:一个请求参数
@ApiImplicitParams:多个请求参数