您现在的位置是:首页 >技术教程 >33.Mybatis-Plus网站首页技术教程
33.Mybatis-Plus
简介33.Mybatis-Plus
一、Mybatis-Plus。
(1)简介。
(2)快速开始_准备工作。
对于Mybatis整合MP有常常有三种用法,分别是Mybatis+MP、Spring+Mybatis+MP、Spring Boot+Mybatis+MP。
(2.1)创建数据库以及表。
1.创建数据库mp,字符集选utf-8。
2.创建表、插入数据。
-- 创建测试表
CREATE TABLE `tb_user` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`user_name` varchar(20) NOT NULL COMMENT '用户名',
`password` varchar(20) NOT NULL COMMENT '密码',
`name` varchar(30) DEFAULT NULL COMMENT '姓名',
`age` int(11) DEFAULT NULL COMMENT '年龄',
`email` varchar(50) DEFAULT NULL COMMENT '邮箱',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
-- 插入测试数据
INSERT INTO `tb_user` (`id`, `user_name`, `password`, `name`, `age`, `email`) VALUES
('1', 'zhangsan', '123456', '张三', '18', 'test1@itcast.cn');
INSERT INTO `tb_user` (`id`, `user_name`, `password`, `name`, `age`, `email`) VALUES
('2', 'lisi', '123456', '李四', '20', 'test2@itcast.cn');
INSERT INTO `tb_user` (`id`, `user_name`, `password`, `name`, `age`, `email`) VALUES
('3', 'wangwu', '123456', '王五', '28', 'test3@itcast.cn');
INSERT INTO `tb_user` (`id`, `user_name`, `password`, `name`, `age`, `email`) VALUES
('4', 'zhaoliu', '123456', '赵六', '21', 'test4@itcast.cn');
INSERT INTO `tb_user` (`id`, `user_name`, `password`, `name`, `age`, `email`) VALUES
('5', 'sunqi', '123456', '孙七', '24', 'test5@itcast.cn');
(2.2)创建工程。
1.创建一个maven工程。
2.导入依赖。
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>Mybatis_Plus</artifactId>
<packaging>pom</packaging>
<version>1.0-SNAPSHOT</version>
<modules>
<module>Mybatis_and_MP</module>
</modules>
<properties>
<maven.compiler.source>15</maven.compiler.source>
<maven.compiler.target>15</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus</artifactId>
<version>3.5.3.1</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.27</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.2.8</version>
</dependency>
<!--简化bean代码的工具包-->
<dependency>
<!--Lombok 是一个 Java 工具库,可以帮助我们减少冗余代码,提高开发效率。通过使用 Lombok 提供的注解,
我们可以自动生成许多 Java 中常见的代码,例如 getter/setter 方法、构造函数、equals/hashcode 方法等。
另外,该代码中的 <optional> 元素被设置为 true,表示 Lombok 库不是必需的依赖项,而是可选的依赖项。-->
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
<version>1.18.26</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<!--SLF4J 是 Simple Logging Facade for Java 的缩写,它提供了一个简单的日志接口,使得应用程序可以方便地切换不同的日志框架实现。
具体来说,SLF4J 定义了一组通用的日志接口和绑定机制,使得应用代码只需要通过 SLF4J 接口进行日志记录,而无需关心底层日志框架的具体实现。
log4j 是一种流行的 Java 日志框架,能够帮助我们对应用程序的运行状态进行全面的监控和记录。slf4j-log4j12
则是针对 log4j 1.2.x 版本的 SLF4J 适配器,可以让我们在应用程序中通过 SLF4J 接口进行日志记录,并将日志输出到 log4j 日志框架中。-->
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.7</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<!--Maven 编译器插件的配置,其作用是指定 Maven 编译器使用的 Java 源代码版本和目标字节码版本。
具体来说,<source> 元素指定了编译器应该使用的源代码版本,而 <target> 元素指定了编译器应该生成的目标字节码版本。
<source> 和 <target> 同时被设置为 1.8,表示使用 Java 1.8 版本的语言特性进行源代码编写,并且将编译后的字节码文件设置为兼容 Java 1.8 运行环境。-->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
(3)快速开始_Mybatis + MP。
注意事项有3个:
1、要加入spring的依赖,不然报错(我使用mybatis-plus的时候需要依赖spring的类)。
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.20.RELEASE</version>
</dependency>
2、mybatis核心加载mapper.xml映射文件或接口(即不需要映射文件)都行。
注意:下面的选一个就行(要么加载映射文件,要么加载接口) <mappers> <mapper resource="UserMapper.xml"/> <mapper class="mybatis_and_mp.mapper.UserMapper"/> </mappers>
3、解决了驼峰命名问题。
数据表是user_name,而查询写的是userName, 然后也查询成功了。
实体User中属性userName采用驼峰,对应数据库中的字段会是user_name
(4)快速开始_Spring + Mybatis + MP。
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。