五、若依--P14【黑马程序员Java最新AI+若依框架项目开发新方案视频教程,基于RuoYi-Vue3前后端分离版本,从前端到后端再到AI智能化应用全通关】

学习视频

【黑马程序员Java最新AI+若依框架项目开发新方案视频教程,基于RuoYi-Vue3前后端分离版本,从前端到后端再到AI智能化应用全通关】 https://www.bilibili.com/video/BV1pf421B71v/?p=6&share_source=copy_web&vd_source=3949d51b57b2891ea14d6e51c792bef6

后端代码分析

Controller,接收前端的请求,调用service处理业务逻辑,并返回我们的结果


    /**
     * 查询课程管理列表
     */
    @PreAuthorize("@ss.hasPermi('course:course:list')")
    @GetMapping("/list")
    public TableDataInfo list(Course course)
    {
        //1. 开启分页
        startPage();
        //2. 查询课程列表
        List<Course> list = courseService.selectCourseList(course);
        //3. 返回表格分页数据对象
        return getDataTable(list);
    }
 

        开启分页返回表格分页数据对象这两个方法在CourseController在并不存在,而且service只是接收了条件,进行查询,并返回一个list集合,那如何做到最终返回的是一个分页数据对象呢?

        首先,找到startPage的所属类在BaseController中,他手机web层通用的数据处理类,我们所有的业务Controller类默认都继承了这个BaseController,那么BaseController中所有公开的属性的方法都可以去使用了。

分页相关的

底层通过拦截器去拦截第二部的SQL语句,实现分页的功能。

那么第三步,他是怎么返回分页数据对象的呢?我们点进去看一下

当前方法也是放在了BaseController中,返回的是一个TableDateInfo对象,

第二个方法是exce的文件下载导出,放到原理篇后面讲

第三个方法是获取课程管理详细信息,返回的是一个非分页的操作结果AjaxResult,那他是怎么实现的呢?

    /**
     * 获取课程管理详细信息
     */
    @PreAuthorize("@ss.hasPermi('course:course:query')")
    @GetMapping(value = "/{id}")
    public AjaxResult getInfo(@PathVariable("id") Long id)
    {
        return success(courseService.selectCourseById(id));
    }

该方法调用了AjaxResult的静态success方法,将对象传过去,而这个对象穿的格式是什么呢?

我们继续点进去,对于非分页的查询,这里面涉及到我们刚才提到的sucess,里面包含三个参数,比如说我们在做课程修改时,是需要会写这部分数据的,我们就可以把data查询出来,在页面进行显示。

那对于一些不需要返回数据对象的业务操作,比如说我们的增删改,又是怎么实现的呢?

这边同样返回的是AjaxResult,但返回的方法不再是success,而是toAjax(),这个方法干了什么事呢?我们点进去看一下。

里面接受的是sevice返回的影响行数,那刚才我们提到了对于数据库的操作,如果影响行数大于0,表示成功了,否则就是操作失败了。

现在我们知道了,将来想做分页查询,返回对象就叫TableDataInfo。将来我们做非分页的操作,咱们返回的结果就是AjaxResult。

最后我们来看一下BaseEntity

  • 22
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值