• 阶段5 3.微服务项目【学成在线】_day07 课程管理实战_01-我的课程-需求分析与PageHelper技术



    1 我的课程
    1.1需求分析
    课程添加完成后可通过我的课程进入课程修改页面,此页面显示我的课程列表,如下图所示,可分页查询。
    注意:由于课程图片服务器没有搭建,这里在测试时图片暂时无法显示。


    上边的查询要实现分页、会存在多表关联查询,所以建议使用mybatis实现我的课程查询。

    1.2 PageHelper
    1.2.1 PageHelper介绍
    PageHelper是mybatis的通用分页插件,通过mybatis的拦截器实现分页功能,拦截sql查询请求,添加分页语句,
    最终实现分页查询功能。
    我的课程具有分页功能,本项目使用Pagehelper实现Mybatis分页功能开发,由于本项目使用springboot开发,在
    springboot上集成pagehelper(https://github.com/pagehelper/pagehelper-spring-boot)
    PageHelper的使用方法及原理如下:
    在调用dao的service方法中设置分页参数:PageHelper.startPage(page, size),分页参数会设置在ThreadLocal中
    PageHelper在mybatis执行sql前进行拦截,从ThreadLocal取出分页参数,修改当前执行的sql语句,添加分页
    sql。
    最后执行添加了分页sql的sql语句,实现分页查询。


    这是课程的基本信息表,这个表中没有课程图片的

    所以要显示课程的图片就必须要关联课程图片表

    所以这个查询建议用Mybatis来做

    通过Mybatis拦截器,由pageHelper对它进行拦截,从ThreadLocal中取出page和size参数,由pageHelper来拼装sql语句

    添加引用



    配置数据库的类型

    定义方法

    注意返回类型

    定义查询课程列表的方法

    xml内配置

    测试

    执行startPage方法就会把参数设置到ThreadLocal。在拦截器里面  Mybatis执行之前就会拿到设置的页码和每页显示的数据量

    然后下面正常的执行查询就可以了


    在测试之前可以把日志设置到debug。主要用来看Mybatis里面打印出来的sql语句是什么


    可以查询到10条记录


    参数要在service里面设置,也就是在调用dao之前设置分页的页码

    图片是分布式的文件地址,现在只需要做查询显示出来图片就可以了








     

  • 相关阅读:
    努力 加油
    大总结(全文手打)加深记忆 表单 注册页面的第一次制作 小白一只多多包含
    购物栏
    三级轮播
    图片轮播
    啊!!苦等,博客终于通过了!!
    SQL升级Oracle挖的Null坑,你懂的!
    关于master..xp_cmdshell’的几个错误_解决办法(转)
    班级博客
    图片系统架构思考之一:删除图片--不容忽视
  • 原文地址:https://www.cnblogs.com/wangjunwei/p/11628215.html
Copyright © 2020-2023  润新知