1、什么MyBatis?
MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。
说白了,MyBatis就是连接数据库的一套框架(程序),它只需要关注SQL语句、输入参数和输出结果的映射,不用解决JDBC连接的各种问题(硬编码、频繁打开释放消耗资源等)
2、引入 相关jar包
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.14</version>
</dependency>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
3、安装mysql,并创建数据库
- 下载地址:https://dev.mysql.com/downloads/mysql/
- 安装:参考https://blog.csdn.net/weixin_42869365/article/details/83472466 net start mysql
- Navicat图形化界面连接mysql
- mysql用户名密码:root/root
- 创建数据库:test
4、resources下新建application.yaml文件
server:
port: 8080
logging:
path: logs
file: mylog.log
spring:
application:
name: myTest
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/test
username: root
password: root
mybatis:
type-aliases-package: com.mybatis/model
mapper-locations:
- mapper/*
5、新建mybatis-config.xml配置文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<typeAliases>
<package name="com.mybatis.model"/>
</typeAliases>
<mappers>
<mapper resource="mapper/mysql.xml"/>
</mappers>
</configuration>
6、java+Mybatis实现数据的增删改查
6.1、mysql.xml文件配置
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.course">
<select id="getUserCount" resultType="Integer">
select count(*) from user;
</select>
</mapper>
6.2、springBoot启动程序Application
@EnableScheduling
@SpringBootConfiguration
public class Application {
private static ConfigurableApplicationContext context;
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@PreDestroy
public void close() {
Application.context.close();
}
}