swagger ui mysql_swagger ui api

swagger-ui 和srping项目的整合还是非常简单的,不知道你们的项目是使用的什么架构。推荐可以去官网查看相关使用说明。

以下是我用springBoot整合Swagger的一个简单案例

1. 添加依赖:

io.springfox

springfox-swagger2

2.7.0

io.springfox

springfox-swagger-ui

2.7.0

2. 创建Swagger配置类:通过@Configuration注解,让Spring来加载该类配置。再通过@EnableSwagger2注解来启用Swagger2通过@Configuration注解,让Spring来加载该类配置。

Docket是api扫描的接口规则制定对象,代码中是全部扫描,并显示所有rest接口api的Docket方式,实际开发的时候请根据自己需求进行定制。

ApiInfo是对swagger首页的信息说明对象,也可以根据实际开发需求进行设置。

@EnableSwagger2

public class SwaggerConfig {

@Bean

public Docket api() {

return new Docket(DocumentationType.SWAGGER_2)

.apiInfo(apiInfo())

.select()

// 扫描的注解所在的包路径

.apis(RequestHandlerSelectors.basePackage("com.jpa.example.demo"))

.paths(PathSelectors.any())

.build();

}

private ApiInfo apiInfo() {

return new ApiInfoBuilder()

//设置首页标题

.title("api文档")

//设置文档整体说明

.description("restful 风格接口")

//服务条款网址

//.termsOfServiceUrl("")

.version("1.0")

//.contact(new Contact("hello", "url", "email"))

.build();

}

}

@EnableSwagger2 指定springBoot初始化时候加载swagger

@EnableSwagger2 //启动swagger注解d

public class DemoApplication {

public static void main(String[] args) {

SpringApplication.run(DemoApplication.class, args);

}

3.使用注解完成接口的说明

import com.jpa.example.demo.bean.User;

import com.jpa.example.demo.service.IUserService;

import io.swagger.annotations.Api;

import io.swagger.annotations.ApiImplicitParam;

import io.swagger.annotations.ApiOperation;

import io.swagger.annotations.ApiParam;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.web.bind.annotation.GetMapping;

import org.springframework.web.bind.annotation.PostMapping;

import org.springframework.web.bind.annotation.RequestBody;

import org.springframework.web.bind.annotation.RestController;

import java.util.List;

/**

* Created By zhangJian on 2019/2/18

* @Api()

* 用于类;表示标识这个类是swagger的资源

* tags–表示说明

* value–也是说明,可以使用tags替代

* 但是tags如果有多个值,会生成多个list

* @description:

*/

@Api(value = "用户controller",tags = {"用户操作接口"})

@RestController

public class UserController {

/**

* 常用注解:

* - @Api()用于类;

* 表示标识这个类是swagger的资源

* - @ApiOperation()用于方法;

* 表示一个http请求的操作

* - @ApiParam()用于方法,参数,字段说明;

* 表示对参数的添加元数据(说明或是否必填等)

* - @ApiModel()用于类

* 表示对类进行说明,用于参数用实体类接收

* - @ApiModelProperty()用于方法,字段

* 表示对model属性的说明或者数据操作更改

* - @ApiIgnore()用于类,方法,方法参数

* 表示这个方法或者类被忽略

* - @ApiImplicitParam() 用于方法

* 表示单独的请求参数

* - @ApiImplicitParams() 用于方法,包含多个 @ApiImplicitParam

*

*/

@Autowired

private IUserService userService;

/**

* value用于方法描述

* notes用于提示内容

* tags可以重新分组(视情况而用)

*

* @ApiParam() 用于方法,参数,字段说明;表示对参数的添加元数据(说明或是否必填等)

* name–参数名

* value–参数说明

* required–是否必填

* @param username

* @return

*/

@ApiOperation(value = "获取用户信息",tags = {"获取用户信息COPY"},notes = "实现注意事项")

@GetMapping("/getUserInfo")

@ApiImplicitParam(name="username",value="用户名",dataType="String", paramType = "query")

public User getUserInfo(String username){

User user = userService.getUserInfo(username);

return user;

}

@ApiOperation(value="更改用户信息",notes="传入用户对象信息")

@PostMapping("/updateUser")

public User updateUser(@RequestBody @ApiParam(name="用户对象",value="传入json格式",required=true)User user){

return userService.updateUser(user);

}

}

访问http://localhost:8080/swagger-ui.html效果如图:

点击接口连接可以查看接口的详细说明,入参示例,通过测试数据可以访问接口并返回数据格式,这里当然是针对返回json数据的。

具体参数说明以及示例可以百度

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值