黑马程序员技术交流社区

标题: 分页查询及模糊查询 [打印本页]

作者: 张廷籴    时间: 2019-6-21 13:55
标题: 分页查询及模糊查询
- 分页查询
  - 核心点:分析当前页面需要什么数据,服务器需要什么数据----->服务器需要接受的参数currentPage以及rows,服务器输出给视图层的数据:PageBean
    - currentPage当前页
    - rows 每页条数
    - List<User> 展示的5条数据---dao查询(start,rows)   0,5  5,5  10,5
      - 索引start = (currentPage -1 )*rows
    - totalCount 总记录数---dao查询
    - totalPage 总页码数 = totalCount % rows == 0 ? totalCount / rows :  totalCount /rows +1
- 模糊查询
  - 核心点:动态SQL
  - 需要将查询的参数传递给service,再传递给dao进行条件的判断查询
  - 查询List<User> 条件分页查询
    1. 定义sql的模板    :  select *  from user where 1= 1
    2. 遍历传递过来的Map集合
       1. 排除currentPage 以及 rows
       2. 判断每个key对应的value是否为null或空字符串
          1. 如果不为null或空字符串--->sb.append(" and   "+key+"like ? ")
          2. 将value添加到List集合中,params.add("%"+value+"%")
    3. 调用template.query(sb.toString(),new BeanPropertyRowMapper(User)<User.class>,params.toArray());





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2