1. 项目所需依赖
1 | <!-- mybatis 依赖 --> |
2. yml
文件中的配置
1 | ### Pagehelper ### |
3. 继承通用 mapper
新建两个通用 Mapper
的接口 ,注意此Mapper的路径需要同UserMapper等业务Mapper的位置区分开。
1 | package com.example.janche.common.core; |
1 | package com.example.janche.common.core; |
上面两个mapper中,第一个多继承了IdsMapper,其余都是一样的,那为什么需要TkMapper呢,因为继承了IdsMapper的业务Mapper,其实体类中必须且只能有一个主键ID,联合主键或者没有主键都不行,否则启动会报错。
4. 通用Mapper的使用
1 | package com.example.janche.user.dao; |
1 | package com.example.janche.user.dao; |
4. PageHelper的使用
4.1 获取用户列表:
1 | // UserController 层接口: |
到此,整个接口的调用,不用写一句SQL代码,只要是单表操作,均可通过pagehelper+通用mapper的形式实现。
4.2 批量删除用户
1 | // UserServiceImpl 实现类: |
上面的例子使用到了TkMapper,因为UserAndRole实体类中没有唯一主键ID,它是联合主键,IdsMapper中会根据主键Ids批量删除,因此UserAndRoleMapple不能继承 继承过IdsMapper的 Mapper。
一套整合完善的springboot2脚手架工程,源码地址如下:GitHub项目地址