1.首先在pox.xml添加Swagger依赖
<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.创建实体类 我的是员工信息
@Data @NoArgsConstructor @AllArgsConstructor public class Dept { private Integer no; private String name; private String dept; }
3.创建SwaggerConfig的配置
@Configuration public class SwaggerConfig { //功能封装在Docket类中 @Bean public Docket docket() { Docket docket = new Docket(DocumentationType.SWAGGER_2) // 设置api文档的信息 .apiInfo( apiInfo()) .select() .apis(RequestHandlerSelectors.basePackage("com.dd.controller")) .build(); return docket; } // 定义自己设置的文档信息 private ApiInfo apiInfo(){ Contact DEFAULT_CONTACT = new Contact("党达", "http://www.baidu.com", "120@qq.com"); ApiInfo apiInfo = new ApiInfo("QY151作业文档", "随便杀杀咯", "V-1.0", "http://www.jd.com", DEFAULT_CONTACT, "月薪过万", "http://www.taobao.com", new ArrayList<VendorExtension>()); return apiInfo; } }
4.控制层
@RestController @Api(tags = "Hello的接口类") @ApiOperation(value = "获取用户信息") public class HelloController { @Autowired //spring容器帮你注入该对象 private Student student; @Autowired private DeptService deptService; // 查询所有 @PostMapping("/list") @ApiOperation(value="查询表格所有信息") public CommonResult list(){ return deptService.findAll(); } // 添加 @PostMapping ("/add") @ApiOperation(value = "员工部门添加") @ResponseBody public CommonResult addDept(@RequestBody Dept dept){ int add=deptService.addDept(dept); if (add>0){ return new CommonResult(2000,"修改成功",add); }else{ return new CommonResult(5000,"修改失败",null); } } // 删除 @PostMapping("/delete") @ApiOperation(value = "员工部门删除") public int delete(Integer no){ return deptService.deleteById(no); } @PostMapping("update") @ApiOperation(value = "员工部门修改;") public CommonResult update(@RequestBody Dept dept){ int update=deptService.upDate(dept); if (update>1){ return new CommonResult(2000,"修改成功",update); }else { return new CommonResult(5000,"修改成功",null); } } @GetMapping("/first") @ApiOperation(value = "获取用户信息") public Map<String,Object> first(){ Map<String,Object> map =new HashMap<>(); map.put("name","党达"); map.put("age","18"); return map; } @PostMapping("/login") @ApiOperation(value = "登录接口") @ApiImplicitParams({ @ApiImplicitParam(value = "账号",name="zh",required=true), @ApiImplicitParam(value = "密码",name="password",required = true) }) public CommonResult login(String zh,String password){ return new CommonResult(2000,"成功载入",null); }
}
5.Dao层
/** * 接口 */ @Component public interface DeptMapper { // 根据ID修改部门 int upDate(Dept dept); // 根据 id查找员工 Dept findById(Integer no); //分页查询 List<Dept> findAll(); //根据Id删除员工 int deleteById(Integer no); // 添加员工 int addDept(Dept dept); }
Mapper语句
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.dd.dao.DeptMapper"> <insert id="addDept" parameterType="com.dd.entity.Dept"> insert into dept(name,dept) values (#{name},#{dept}) </insert> <update id="upDate" parameterType="com.dd.entity.Dept"> update dept set name =#{name} ,dept=#{dept} where no=#{no} </update> <delete id="deleteById" parameterType="com.dd.entity.Dept"> delete from dept where no =#{no} </delete> <select id="findById" resultType="com.dd.entity.Dept"> select * from dept where no =#{no} </select> <select id="findAll" resultType="com.dd.entity.Dept"> select * from dept </select> </mapper>
6.service层
Impl实现类
@Service public class DeptImpl implements DeptService { @Autowired private DeptMapper deptMapper; @Override public int upDate(Dept dept) { return deptMapper.upDate(dept); } @Override public Dept findById(Integer no) { return deptMapper.findById(no); } @Override public CommonResult findAll() { PageHelper.startPage(1,5); List<Dept> list=deptMapper.findAll(); PageInfo<Dept> deptPageInfo = new PageInfo<>(list); System.out.println("当前页码"+deptPageInfo.getPageNum()); System.out.println("当前总页码"+deptPageInfo.getPages()); System.out.println("总条数"+deptPageInfo.getTotal()); System.out.println("当前页码记录"+deptPageInfo.getList()); return new CommonResult(2000, "查询成功", list); } @Override public int deleteById(Integer no) { return deptMapper.deleteById(no); } @Override public int addDept(Dept dept) { return deptMapper.addDept(dept); } }
public interface DeptService { // 根据ID修改部门 int upDate(Dept dept); // 根据 id查找员工 Dept findById(Integer no); //分页查询 CommonResult findAll(); //根据Id删除员工 int deleteById(Integer no); // 添加员工 int addDept(Dept dept); }
记得在Spring启动注解下加入这两个注解
@SpringBootApplication
@MapperScan(basePackages="com.dd.dao")//为指定的包下接口生成代理类 @EnableSwagger2//开启swagger注解
效果图