七、整合MyBatis
1.导入依赖
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.2</version>
</dependency>
<!-- <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency> 创建时勾选 JDBC API 和 MYSQL Driver 会自动生成-->
2.配置数据库信息
在properties or yaml 中配置连接数据库
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.url=jdbc:mysql://localhost:3306/check?serverTimezone=UTC&useUnicode=true&characterEncoding=UTF-8
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
jdbc 8.0 以上需要用com.mysql.cj.jdbc.Driver 且需要配置时区
serverTimezone=UTC 不配置会报错
3.实体类 Student
private Integer sno;
private String sname;
private Integer sage;
private String saddress;
有参 无参 get set
4.mapper
-
创建接口 StudentMapper
-
在接口上加上**@Mapper** 注解 表示这是一个mybatis的mapper类 或者 在main 主类上加上**@MapperScan(xxx)**注解
-
加上**@Repository** dao层
-
接口中写方法(CRUD)
List<Student> queryAll();
-
在resource目录下创建mybatis mapper目录 创建StudentMapper.xml
<?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.xm.mapper.UserMapper"> <select id="queryAll" resultType="Student" > select * from student; </select> </mapper>
-
在properties or yaml 中配置 mybatis 的配置信息
mybatis.type-aliases-package=com.xm.pojo #别名 mybatis.mapper-locations=classpath:mybatis/mapper/*.xml #绑定mapper
5.controller层
-
加上**@RestController** controller层
-
将StudentMapper 自动注入
@Autowired private StudentMapper studentMapper;
-
实现方法
@GetMapping("/queryUserList") public List<Student> queryAll(){ List<Student> students = studentMapper.queryAll(); for (Student student : students) { System.out.println(student); } return students; }
6.总结
1.在properties yaml中配置数据库信息
2.在接口上加上@Mapper注解 mapper里写方法
3.注意xxxmapper.xml 一定要写在resource下的mybatis/mapper下 namespace一定要改
4.properties yaml中配置绑定mapper
5.controller 层 —> service 层—> dao(mapper)层
步骤
- 导入依赖
- 配置文件
- mybatis配置
- 编写sql
- service层调用dao
- controller 层调用 service层