mybatis与mysql关系阐述_mysql和mybatis的关系-爱代码爱编程
MyBatis是一个持久层(persistence layer)框架,用于简化Java应用程序与关系数据库(如MySQL)的交互。它通过消除大量冗余的JDBC代码,并提供了一个简单且易于使用的API,使得开发者可以更高效地进行数据库操作。以下是MyBatis与MySQL之间的关系和它们如何协同工作的详细说明:
MyBatis的基本概念
-
SQL映射:MyBatis允许开发者在XML文件或注解中定义SQL查询、插入、更新和删除语句。这些SQL语句与Java对象之间的映射关系由MyBatis管理。
-
持久层框架:MyBatis负责管理Java应用程序中的持久层代码,简化了与数据库的交互过程。开发者可以专注于编写SQL,而不是处理繁琐的JDBC代码。
-
自动映射:MyBatis可以自动将数据库查询结果映射到Java对象,极大地简化了数据转换的过程。
MyBatis与MySQL的关系
-
数据源配置:在MyBatis中,开发者需要配置数据源(DataSource)以连接到MySQL数据库。数据源配置通常包括数据库URL、用户名、密码等信息。
-
SQL映射文件:开发者可以在MyBatis的XML映射文件中定义SQL语句,这些SQL语句将被发送到MySQL数据库进行执行。例如:
<select id="selectUser" resultType="User"> SELECT id, username, password FROM users WHERE id = #{id} </select>
-
MyBatis会话:通过MyBatis会话(SqlSession),开发者可以执行预定义的SQL语句并处理结果集。会话的管理由MyBatis提供的API负责。
-
对象映射:MyBatis将从MySQL数据库中检索到的结果集自动映射到Java对象中,使得数据处理变得更加简洁和直观。
SpringBoot如何使用MyBatis与MySQL进行集成
1. 安装和运行MySQL
安装MySQL
如果您的系统中还没有安装MySQL,可以根据您的操作系统选择以下命令来安装:
对于MacOS:
brew install mysql
对于Windows: 可以从MySQL官网下载MySQL安装程序进行安装。
启动MySQL服务
安装完成后,确保MySQL服务正在运行:
MacOS:
brew services start mysql
Windows: 通过“服务”应用程序启动MySQL服务,或者在命令提示符中运行:
net start mysql
登录MySQL并创建数据库
-
使用默认用户登录MySQL:
mysql -u root -p
初始密码为空,直接按回车
出现如下提示说明登录成功:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 24
Server version: 8.3.0 Homebrew
登录成功后建议修改密码,如果返回Query OK, 0 rows affected (0.01 sec)
,表示修改成功:
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456'
-
创建一个新的数据库:
CREATE DATABASE blog_test;
-
查看所有数据库
show databases;
3、使用指定数据库
USE blog_test;
4、上述数据库下创建表,user_name和password两个字段
CREATE TABLE user (
id INT AUTO_INCREMENT PRIMARY KEY,
user_name VARCHAR(255) NOT NULL,
password VARCHAR(255) NOT NULL
);
2. 配置Spring Boot项目连接MySQL
确保在您的Spring Boot项目中添加了MySQL依赖。在pom.xml
中添加以下内容:
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
</dependencies>
3. 配置application.yml
或application.properties
在src/main/resources
目录下创建或编辑application.yml
或application.properties
文件,配置数据库连接信息:
使用application.yml
文件:
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/blog_test?useSSL=false&useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&autoReconnect=true&failOverReadOnly=false&maxReconnects=10
username: root # 或者您创建的用户
password: 123456 # 或者您创建的用户密码
hikari:
maximum-pool-size: 10
max-lifetime: 1770000
mybatis:
type-aliases-package: com.clw.lesson02.entity
configuration:
map-underscore-to-camel-case: true
mapper-locations:
- classpath:mapper/*.xml
使用application.properties
文件:
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/blog_test?useSSL=false&useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&autoReconnect=true&failOverReadOnly=false&maxReconnects=10
spring.datasource.username=root # 或者您创建的用户
spring.datasource.password=123456 # 或者您创建的用户密码
spring.datasource.hikari.maximum-pool-size=10
spring.datasource.hikari.max-lifetime=1770000
mybatis.type-aliases-package=com.clw.lesson02.entity
mybatis.configuration.map-underscore-to-camel-case=true
mybatis.mapper-locations=classpath:mapper/*.xml
我真是服了这个垃圾编辑器了