1、pom文件
<!--swagger2坐标--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> </dependency> <!--swagger ui--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.2</version> </dependency> <!--美化swagger2界面的坐标--> <dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>swagger-bootstrap-ui</artifactId> <version>1.9.6</version> </dependency>
2、公共配置类
package org.zero.config; import com.github.xiaoymin.swaggerbootstrapui.annotations.EnableSwaggerBootstrapUI; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import springfox.documentation.builders.ApiInfoBuilder; import springfox.documentation.builders.PathSelectors; import springfox.documentation.builders.RequestHandlerSelectors; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket; import springfox.documentation.swagger2.annotations.EnableSwagger2; @Configuration//配置注解 @EnableSwagger2//开启传统swagger2界面 @EnableSwaggerBootstrapUI//优化swagger2界面 public class SwaggerConfig { @Bean public Docket createRestApi(){ return new Docket(DocumentationType.SWAGGER_2) .pathMapping("/") .select() .apis(RequestHandlerSelectors.basePackage("org.zero")) .paths(PathSelectors.any()) .build() .apiInfo(new ApiInfoBuilder() .title("Swagger2接口文档") .description("信息信息...") .version("9.0") .license("apache license") .licenseUrl("http://www.baidu.com") .build()); } }
3、实体类
package org.zero.bean; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import java.time.LocalDateTime; import java.io.Serializable; import java.util.Date; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; @Data @EqualsAndHashCode(callSuper = false) @Accessors(chain = true) @TableName("sys_user") @ApiModel(value="User对象", description="用户信息表") public class User implements Serializable { private static final long serialVersionUID = 1L; @ApiModelProperty(value = "用户ID") @TableId(value = "user_id", type = IdType.AUTO) private Long userId; @ApiModelProperty(value = "部门ID") private Long deptId; @ApiModelProperty(value = "用户账号") private String userName; @ApiModelProperty(value = "用户昵称") private String nickName; @ApiModelProperty(value = "用户类型(00系统用户)") private String userType; @ApiModelProperty(value = "用户邮箱") private String email; @ApiModelProperty(value = "手机号码") private String phonenumber; @ApiModelProperty(value = "用户性别(0男 1女 2未知)") private String sex; @ApiModelProperty(value = "头像地址") private String avatar; @ApiModelProperty(value = "密码") private String password; @ApiModelProperty(value = "帐号状态(0正常 1停用)") private String status; @ApiModelProperty(value = "删除标志(0代表存在 2代表删除)") private String delFlag; @ApiModelProperty(value = "最后登陆IP") private String loginIp; @ApiModelProperty(value = "最后登陆时间") private Date loginDate; @ApiModelProperty(value = "创建者") private String createBy; @ApiModelProperty(value = "创建时间") private Date createTime; @ApiModelProperty(value = "更新者") private String updateBy; @ApiModelProperty(value = "更新时间") private Date updateTime; @ApiModelProperty(value = "备注") private String remark; }
4、controller
package org.zero.controller; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.*; import org.zero.bean.User; import java.util.List; @RestController @RequestMapping("/sys/user") @Api(tags = "apuser表的操作") public class UserController { @PostMapping("/findAll") @ApiOperation("查询全部数据") public List<User> selectAll(@RequestBody User user ){ return null; } }