学习笔记:黑马程序员JavaWeb开发教程(2025.3.21)

锦通  金牌会员 | 2025-3-22 08:05:10 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 971|帖子 971|积分 2913

10.7 案例-员工管理-分页查询-分析
    形参的默认值可以利用注解来设置:@RequestParam(default = “1”)

10.8 案例-员工管理-分页查询-PageHelper插件
    分页插件PageHelper资助完成有关分页的全部操作,我们只要正常利用查询语句就可以了。插件会主动的获取到要执行的sql语句,将要执行的sql语句换成count(*),主动执行这条sql语句,还会对该sql语句举行改造,在背面加上limit关键字,而limit的两个参数,PageHelper会主动根据传递上来的两个参数,来计算起始索引核每一页展示的记录数,之后就获得了分页查询的数据,将分页查询的数据封装到Page<Emp>对象中,最终获取Page对象中封装的分页查询结果
    右下代码块中,empList着实是Page类,以是要强转
 

    利用PageHelper插件,对于控制层的代码,不必要修改,因为控制层是与前端交互,后端技能的迭代是不会影响他与前端的交互。只必要对服务层和mapper层修改
10.9 案例-员工管理-分页条件查询
    只必要在原来的基础上,对于控制层和服务层,加上查询条件参数,对于map层,对sql语句举行修改
 

    在controller层中的方法参数名,要和接口文档当中的参数名保持一致,要不然和前端接不上
    对于日期时间类参数要想乐成接收,要通过注解来指定必要前端传递过来的格式,利用@DateTimeFoemat
    对于map层的修改,要利用where举行筛选,但是查询条件是动态的,以是要利用动态sql,动态sql利用xml文件来界说
    Xml映射文件界说的三点规范:同包同名,在resource下界说和map文件相同的包
        Xml文件的束缚可以从mabatis官网上得到
        第二点规范是,map标签的namespace必须和map接口的全类名保持一致
        Sql语句的id必须与map接口的方法名保持一致,而且返回范例一致,xml文件中的返回范例是单条记录的返回范例
        设置动态sql,例如,像name如许的属性大概没有输入,因此要利用if如许的标签来举行动态sql,利用test属性来指定条件。对于由于条件成立与否造成的语句报错,就是多一个where大概and之类的,应该利用<where>标签。<where>标签的作用是判断是否要天生where子句以及是否要去掉此中多余的and、or
 

    对于name,没有传参的时候,还是有拼接根据姓名举行模糊匹配的语句,传递进来的参数实际是应该空字符串(这里是因为name是String范例,当为空的时候,传进来的不是null,是空字符串),但是在xml语句中,没有对中国条件举行筛选,因此应该增加条件
    总结,条件分页查询分为条件查询和分页查询实现
 

    在实操的时候,对于EmpServiceLmpl文件,中和map交互的部分产生迷惑,不知道该往哪里传参,应该往List<Emp> empList = empMapper.list(),往list方法中传递筛选条件参数


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

锦通

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表