刚接触开发工作的时候,一个小小的模糊搜索都会琢磨半天。为了方便以后随时取用我在这里记录一下 并叙述一下分页的详细过程。适合小白新手。
作者分享的代码都是可以直接复制取用的(只需修改参数即可)
sql也可分开来写,这里整合到一块了方便取用
首先分页的实现,需要的参数(控制层接收参数)
在就是最关键的mapper层(之前在这里犯了个错误,我可以直接在这里判断key值,我之前是在逻辑层对key值进行判断比较麻烦一些)
将参数全部传入方法内
<select id="getListForPage" resultType="com.zufeng.zftdhsxt.domain.ZfUsers" resultMap="BaseResultMap"> select zf.id, zf.head, zf.account, zf.position, zf.prereview, zf.qyzt, zf.registrationtime, zf.sjh, zf.dw, zf.email, zf.ssxz, zf.uname ,zd.NAME ,zf.UpdateTime from zf_users zf left join zf_departments zd on zf.DEPARTMENTID=zd.ID where 1=1 <if test="key !=null and key !=''" > and concat( IFNULL(ACCOUNT,''),IFNULL(DEPARTMENTID,''),IFNULL(POSITION,''),IFNULL(PREREVIEW,''), IFNULL(QYZT,''),IFNULL(SJH,''),IFNULL(zf.UpdateTime,'')) like concat('%',#{key},'%') </if> <if test=" startTime!=null and startTime!=''"> AND REGISTRATIONTIME >= CONCAT('','${startTime}',' 00:00:00') </if> <if test=" endTime!=null and endTime!=''"> AND REGISTRATIONTIME <= CONCAT('','${endTime}',' 23:59:59') </if> order by zf.UpdateTime desc </select>
直接在这里判断key值,是否为null,下面是ifnul是判断多个参数是否为空, 在下面是时间段查询,看前端需要根据什么字段查询,换字段即可,最后一个是根据时间排序