查询
分页查询
这里只考虑分页查询
先不带条件
so
--参数1:起始索引
--参数2:查询返回记录数
select * from emp limit 0,5;
对应公式,根据页数查询
select * from emp limit (页码-1)*每页记录数,每页记录数;
我们只考虑传参只有
每页记录数pageSize和对应页数page
需要实现一个pojo类存储这个数据结构,这里就是pageBean
对应代码
分页插件PageHelper
!通过配置文件引入!,其实就是个依赖
可以看到分页查询的功能比较繁琐
可以通过插件简化分页查询的操作
Page是pageHelper定义了的对象
如果用了
pageHelper.startPage(page,pageSize)
设置了对于的请求参数,其实返回的List集合其实就是Page类型(分页结果封装类)
page.total是对应的总数,page.getResult是该页的数据
至于为什么,就是插件帮我们自动改造了sql语句,可以这么认为
对应的页码是从1开始的(包括我们自己写也是(页码-1)*每页记录数=索引)
挺简单的
controller
对应传1,5的底层
分页+条件
之前写过对应的sql语句
根据姓名性别和入职时间进行对应的条件查询
这种复杂的大多用xml和动态sql
主要是前面的sql语句进行改造
controller+mapper+service+xml
controller
service接口
service实体类
Mapper
xml
postman运行结果
成功的
小插曲
!!!
用xml文件映射一定要注意
三点一定要全匹配
我是
java程序在com.itheima,mapper包下
然后我xml在com.ithiema.mapper目录,中间的itheima不匹配导致一直找不到xml文件的sql语句
删除操作
controller
中间service没什么操作不写了
mapper
xml
注意点
1其实接口文档传参是数组,但是java中数组需要提前规定容量,所以用List集合存储
而且这种路径上的也能接收
2.service里面没有处理ids里面的数据,我本来还想那xml怎么识别ids里面的每个数据
忘了for each标签,其实就算处理了,分成很多个id,id的数目是不确定的,也不好处理
这里是foreach标签
修改员工
点击编辑先显示对应员工信息属于查询回显
然后再是编辑保存是发送数据那个正常操作
查询回显
controller+service+mapper
修改员工正常操作
接收json格式@RequestBody赋给emp
这样就可以了,记得在service里补充更新时间