目录
之前搭建项目的时候,没有什么问题包括引入依赖,结果在测试的时候一直报错,后面原因竟然是引入的依赖各个版本不兼容,哎!栓Q!
一、引入依赖
<dependencies>
<!--lombok注解依赖-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.22</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- mybatis起步依赖 -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.0.1</version>
</dependency>
<!-- mysql驱动包 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.26</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter-test</artifactId>
<version>3.0.3</version>
</dependency>
</dependencies>
二、创建实体类
@Data
@NoArgsConstructor
@AllArgsConstructor
public class user {
private Integer id;
private String name;
private Integer age;
}
三、编写mapper接口以及映射文件
Mapper接口
@Mapper
public interface UserMapper {
List<user> findAll();
}
映射文件
(注意映射文件一定要和mapper属于同一目录文件)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.gq.springboot_mybatis_demo1.mapper.UserMapper">
<select id="findAll" resultType="com.gq.springboot_mybatis_demo1.pojo.user">
select * from user
</select>
</mapper>
四、编写application.yml配置文件
这里主要在配置文件中编写什么呢?
(1)编写数据池,连接数据库不肯定要用户名,密码,地址等等
(2)mybatis的配置,告诉spring你的映射文件的路径在哪里,以及编写的实体类的位置在哪里(也叫起别名)
(3)log打印,这个我们可以根据日志方便找出bug
# 配置数据源
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql:///sql_test?serverTimezone=UTC
username: root
password: root
#mybatis配置
mybatis:
# 映射文件位置
mapper-locations: com/gq/springboot_mybatis_demo1/mapper/*Mapper.xml
# 别名
type-aliases-package: com.gq.springboot_mybatis_demo1.pojo
logging:
pattern:
console: '%d{HH:mm:ss.SSS} %clr(%-5level) --- [%-15thread] %cyan(%-50logger{50}):%msg%n'
五、进行测试
如果使用idea作为编辑器的话,在测试的时候我们可以使用ctrl+shift+t快捷键帮助我们快速创建测试类
//测试的时候一定不要忘了加SpringBoot注解
@SpringBootTest
class UserMapperTest {
@Autowired
private UserMapper userMapper;
@Test
void findAll() {
List<user> list=userMapper.findAll();
list.forEach(System.out::println);
}
}