MyBatis-plus这么好用,不允许还有人不会

你好呀,我是 javapub.

做 Java 的同学都会用到的三件套,Spring、SpringMV、MyBatis。但是由于使用起来配置较多,依赖冲突频发。所有,各路大佬又在这上边做了包装,像我们常用的 SpringBoot、MyBatisPlus。

基于当前要开发的是一个用户中心系统,查询逻辑比较简单,这里选用 MyBatis-Plus 就够用。但是很多同学还没用过这个工具,今天带你使用一下。省下时间来摸鱼啊。

环境

  • JDK17
  • SpringBoot3.*

初始化项目

初始化一个 SpringBoot 项目,不需要添加 MyBatis 依赖。

添加依赖

mvnrepository 获取需要的 MyBatis-Plus 版本。这里以 MySQL 为例。

xml 复制代码
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-spring-boot3-starter</artifactId>
            <version>3.5.7</version>
        </dependency>

SpringBoot数据库信息配置

application.yml

yml 复制代码
# 应用服务 WEB 访问端口
server:
  port: 8080

# DataSource Config
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://rm-t4njraxo75r1e4jlevo.mysql.singapore.rds.aliyuncs.com:3306/javapub_test?characterEncoding=utf8&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&useSSL=false
    username: javapub_admin
    password: JavaPub666
  sql:
    init:
      schema-locations:

mybatis-plus:
  mapper-locations: classpath:mapper/*.xml
  type-aliases-package: cn.net.javapub.entity
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 这个配置会将执行的sql打印出来

如果你没有数据库,可以来 javapub,给你提供一个免费的实例。

SQL语句

提供一个 SQL,用来做测试。

user.sql

sql 复制代码
create table user
(
    id    bigint      not null comment '主键ID'
        primary key,
    name  varchar(30) null comment '姓名',
    age   int         null comment '年龄',
    email varchar(50) null comment '邮箱'
);

INSERT INTO javapub_test.user (id, name, age, email) VALUES (1, '张子涵', 18, '[email protected]');
INSERT INTO javapub_test.user (id, name, age, email) VALUES (2, '张子恒', 20, '[email protected]');
INSERT INTO javapub_test.user (id, name, age, email) VALUES (3, '李子璇', 28, '[email protected]');
INSERT INTO javapub_test.user (id, name, age, email) VALUES (4, '王梓旭', 21, '[email protected]');
INSERT INTO javapub_test.user (id, name, age, email) VALUES (5, '曹欣然', 24, '[email protected]');

代码逆向生成工具

推荐一个 IDE 插件,免费、简洁、好用。MyBatis-X

它可以帮我快速的生成 service、mapper、entity、xml 层,减少重复工作。

演示

至此,就可以使用 MyBatis-Plus 了。在 test 文件下执行测试案例。

其他用例

从这个方法点进来可以看到 MyBatis-plus 源码,它已经帮我们把大多数的常用工具都做好了,只需要实现这个 service 和 mapper 类即可。

源码:

https://github.com/Rodert/SpringBoot-javapub/

原文地址:

https://javapub.net.cn/star/project/user-center/

相关推荐
侧耳倾听11120 小时前
14.mybatis源码解析
java·mybatis
来自星星的坤2 天前
使用 MyBatis-Plus 实现高效的 Spring Boot 数据访问层
spring boot·后端·mybatis
XiaoLeisj2 天前
【MyBatis】深入解析 MyBatis:关于注解和 XML 的 MyBatis 开发方案下字段名不一致的的查询映射解决方案
xml·java·spring boot·spring·java-ee·tomcat·mybatis
luoluoal2 天前
Java项目之基于ssm的个性化旅游攻略定制系统(源码+文档)
java·mysql·mybatis·ssm·源码
2401_897930062 天前
MyBatis 分页插件使用教程
mybatis
luoluoal3 天前
Java项目之基于ssm的怀旧唱片售卖系统(源码+文档)
java·mysql·mybatis·ssm·源码
bing_1583 天前
Mybatis 如何自定义缓存?
java·缓存·mybatis
zkmall3 天前
MyBatis Plus 在 ZKmall开源商城持久层的优化实践
spring cloud·开源·mybatis
程序猿熊跃晖5 天前
解决 MyBatis-Plus 中 `update.setProcInsId(null)` 不生效的问题
数据库·tomcat·mybatis