二、SpringBoot2核心功能--03数据访问--03springboot整合mybatis-plus

2.3、配置分页插件


在这里插入图片描述

@Configuration

public class MyBatisConfig {

@Bean

public MybatisPlusInterceptor mybatisPlusInterceptor() {

MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();

interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.H2));

return interceptor;

}

}

2.4、在 Spring Boot 启动类中添加 @MapperScan 注解,用于扫描 Mapper 文件夹


在这里插入图片描述

2.5、编码测试功能


2.5.1、数据库中建表:

在这里插入图片描述

DROP TABLE IF EXISTS user;

CREATE TABLE user

(

id BIGINT(20) NOT NULL COMMENT ‘主键ID’,

name VARCHAR(30) NULL DEFAULT NULL COMMENT ‘姓名’,

age INT(11) NULL DEFAULT NULL COMMENT ‘年龄’,

email VARCHAR(50) NULL DEFAULT NULL COMMENT ‘邮箱’,

PRIMARY KEY (id)

);

DELETE FROM user;

INSERT INTO user (id, name, age, email) VALUES

(1, ‘Jone’, 18, ‘test1@baomidou.com’),

(2, ‘Jack’, 20, ‘test2@baomidou.com’),

(3, ‘Tom’, 28, ‘test3@baomidou.com’),

(4, ‘Sandy’, 21, ‘test4@baomidou.com’),

(5, ‘Billie’, 24, ‘test5@baomidou.com’);

2.5.2、实体类:

注解

@TableName:用来将指定的数据库表和 JavaBean 进行映射

@TableField:表示当前属性不是数据库的字段,但在项目中必须使用

在这里插入图片描述

在这里插入图片描述

2.5.3、持久层:

新建userMapper接口,再使该接口继承**BaseMapper<>**接口,无需再编写mapper.xml文件,即可完成CRUD操作。

在这里插入图片描述因为在BaseMapper<>接口中定义了多个的方法。

在这里插入图片描述

2.5.4、业务层:

编写IUserService接口,该接口机继承IService接口,就无需在IUservice接口中编写业务逻辑代码。

在这里插入图片描述新建IUserService接口的实现类,该类实现IUserService接口。并且实现ServiceImpl类,这样就不用在UseSerrviceImpl类中编写业务代码了。

在这里插入图片描述

2.5.5、控制层代码

在这里插入图片描述

调用userService的page()方法,可以查询出分页数据。

在这里插入图片描述

2.5.6、前端页面取出数据

在这里插入图片描述

2.5.7、对数据进行分页处理

在这里插入图片描述

thymeleaf分页条页码显示设置:

在这里插入图片描述thymeleaf实现给显示的每个页码带上超链接,点击该页码可以跳到对应页:

在这里插入图片描述

当前第 [[ p a g e . c u r r e n t ] ] 页总计 [ [ {page.current}]] 页 总计 [[ page.current]]页总计[[{page.pages}]] 页 共[[${page.total}]]条记录

    • [[${num}]]

    • 2.5.8、数据删除操作

      contoroller接口中编写删除方法

      在这里插入图片描述

      @Autowired

      IUserService userService;

      @GetMapping(“/user/delete/{id}”)

      public String deleteUser(@PathVariable(“id”) long id,

      @RequestParam(value = “pn”,defaultValue = “1”) Integer pn,

      RedirectAttributes ra){

      //调用userService的方法实现删除

      userService.removeById(id);

      //页面重定向时将带上请求参数pn。以实现删除该页的数据后依然留在该页

      ra.addAttribute(“pn”,pn);

      return “redirect:/dynamic_table”;

      }

      前端页面:

      自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

      深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

      因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

      既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

      由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

      如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

      img

      最后

      我还通过一些渠道整理了一些大厂真实面试主要有:蚂蚁金服、拼多多、阿里云、百度、唯品会、携程、丰巢科技、乐信、软通动力、OPPO、银盛支付、中国平安等初,中级,高级Java面试题集合,附带超详细答案,希望能帮助到大家。

      新鲜出炉的蚂蚁金服面经,熬夜整理出来的答案,已有千人收藏

      还有专门针对JVM、SPringBoot、SpringCloud、数据库、Linux、缓存、消息中间件、源码等相关面试题。

      新鲜出炉的蚂蚁金服面经,熬夜整理出来的答案,已有千人收藏

      《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
      、银盛支付、中国平安等初,中级,高级Java面试题集合,附带超详细答案,希望能帮助到大家。**

      [外链图片转存中…(img-PvRnTK1Y-1713463410632)]

      还有专门针对JVM、SPringBoot、SpringCloud、数据库、Linux、缓存、消息中间件、源码等相关面试题。

      [外链图片转存中…(img-jB6EyHbN-1713463410633)]

      《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

    • 29
      点赞
    • 10
      收藏
      觉得还不错? 一键收藏
    • 0
      评论

    “相关推荐”对你有帮助么?

    • 非常没帮助
    • 没帮助
    • 一般
    • 有帮助
    • 非常有帮助
    提交
    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

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

    抵扣说明:

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

    余额充值