1,使用依赖
<dependency>
<groupId>com.spring4all</groupId>
<artifactId>swagger-spring-boot-starter</artifactId>
<version>1.9.1.RELEASE</version>
</dependency>
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>swagger-bootstrap-ui</artifactId>
<version>1.7.8</version>
</dependency>
2,创建一个配置类
@Configuration @EnableSwagger2 //开启swagger注解驱动 public class SwaggerConfig { @Bean //把方法返回的数据对象 交于spring容器管理 public Docket docket(){ Docket docket = new Docket(DocumentationType.SWAGGER_2).groupName("zmf") .apiInfo(getInfo()) .select() .apis(RequestHandlerSelectors.basePackage("com.zmf.demo.controller")) //只为com.zmf.controller包下的类生成接口文档 .build(); return docket; } private ApiInfo getInfo(){ Contact DEFAULT_CONTACT = new Contact("zmf", "http://www.baidu.com", "120@qq.com"); ApiInfo apiInfo=new ApiInfo("心理测试系统", "测试系统API", "1.1.0", "http://www.jd.com", DEFAULT_CONTACT, "xx科技", "http://www.aaa.com", new ArrayList<VendorExtension>()); return apiInfo; } }
3,访问swagger在线文档
4,注意事项(整合过程中使用的注解)
配置类中: @EnableSwagger2 //开启swagger注解驱动
实体类中:
@ApiModel(value = "班级表")//该实体类所代表的内容
@ApiModelProperty(value = "班级号")//该属性所代表的内容
如果实体类中有时间属性的话
@DateTimeFormat(pattern = "yy-MM-dd")
private Date sdate;
如果在实体类需要加入其他的实体类对象的话
@TableField(exist = false)
private Class aClass;
控制层:
@GetMapping("selectbyid/{id}")//查询语句
@PostMapping("insert")//插入语句
@PutMapping("update")//更新语句
@DeleteMapping("delete/{id}")//删除语句
@ApiOperation(value = "插入单行数据")//放在接口方法上 对接口方法加以说明
@ApiParam(value = "当前页面",name ="current",required = true,defaultValue = "1")//对接口方法中传入的参数加以说明
实际例子:对studengt表和class表进行增删改查
主启动类:
实体类
config类:
为swapper注册驱动
为主启动类注册启动
service层:
service实现类:
controller层:
注意:
@PathVariable接收请求路径中占位符的值,
@RequestBody 主要用来接收前端传递给后端的 json 字符串中的数据(请求体中的数据);