今天跟着mybatisplus官方文档做快速入门的Demo时,在测试环节卡了我好久,下面我整理一下具体的思路。
1.建立数据库
在idea中建立名称为huhu数据库,打开控制台,编写表信息。
![]() |
![]() |
![]() |
在控制台中建立user表,向其中插入5条数据
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user`
(
id BIGINT NOT NULL COMMENT '主键ID',
name VARCHAR(30) NULL DEFAULT NULL COMMENT '姓名',
age INT 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');
select * from user
2.初始化工程
创建一个空的 Spring Boot 工程,加入 mysql数据库进行集成测试。
点此 Spring Initializer 可快速初始化一个 Spring Boot 工程
3.添加依赖
在pom.xml引入 MyBatis-Plus Starter 依赖
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.6</version>
</dependency>
4.配置
将配置文件application.properties名称改为application.yml
在 application.yml
配置文件中添加 mysql数据库的相关配置:
在 Spring Boot 启动类中添加
@MapperScan
注解,扫描 Mapper 文件夹:
在这里需要新建一个Mapper的文件夹
新建一个UserCenterApplication的类
@SpringBootApplication
@MapperScan("com.huhu.usercenter.mapper")
public class UserCenterApplication {
public static void main(String[] args) {
SpringApplication.run(UserCenterApplication.class, args);
}
}
5.编码
编写实体类 ,新建一个model的包,在其中新建一个user实体类
@Data
public class User {
private Long id;
private String name;
private Integer age;
private String email;
}
在mapper包中编写 Mapper 接口类 UserMapper.java
:
public interface UserMapper extends BaseMapper<User> {
}
目录结构如下
6.开始使用
添加测试类,进行功能测试:目录如下
@SpringBootTest
public class SampleTest {
@Resource
private UserMapper userMapper;
@Test
public void testSelect() {
System.out.println(("----- selectAll method test ------"));
List<User> userList = userMapper.selectList(null);
Assert.isTrue(5 == userList.size(), "");
userList.forEach(System.out::println);
}
}
控制台输出:
说一下我踩的坑(折磨我老半天)
1.springboot版本不要过高,之前选择3.2.5运行报错,后来改为3.0.5成功运行。
2.pom.xml中要引入junit依赖包,缺少依赖相关的包,可以去Maven仓库(https://mvnrepository.com/)寻找 。
3.Java版本我选择的是17,因为选择Java8运行报java.lang.UnsupportedClassVersionError
当在 Java 中遇到 java.lang.UnsupportedClassVersionError
这个错误时,通常表示当前运行环境的 Java 版本不支持要运行的类文件的版本。
解决方法:
- 确保运行环境的 Java 版本与项目编译时使用的版本一致或更高。
- 检查依赖的库,看是否有不兼容的情况,必要时更新或调整这些库。
例如,如果项目是用 Java 11 编译的,但你在 Java 8 的环境中运行,就可能出现这个错误。你需要将运行环境升级到 Java 11 或更高版本。或者如果某个依赖库是针对 Java 11 编译的,而你的项目运行在 Java 8 上,要么升级项目的 Java 版本,要么寻找与 Java 8 兼容的该库的版本
4.我选择 @Resource注解,用 @Autowired注解显示无法进行自动装配,
@Resource
// @Autowired
private UserMapper userMapper;
mybatisplus入门程序思路比较简单,如果大家在编写过程中检查步骤没问题但无法运行成功,大多数情况与配置类的版本有关,也有可能跟没有正确使用注解符有关。