SpringBoot 对数据库的访问操作,官方推荐使用Spring Data Jpa。Spring Data Jpa 是对hibernate的封装,提取了很多通用方法,满足比较常用的增删改查,具体底层是hibernate,核心思想是:Code First。
Mybatis比较接近原生sql,需要较强的sql功底,Mybatis-plus是mybatis的增强版,同时也兼容,像jpa一样提取的通用的方法,简单sql不用写查询方法,核心思想是:Db First。
JPA.vs.Mybatis
JPA和Mybatis二者并不矛盾,Class First适合从零到一。对于从零开始的项目,系统设计的一个重要步骤是把业务模型映射到实体模型,此时使用Class First是最佳方式,开发效率高,重构轻松,兼顾了效率和灵活性,让设计师可以把更多精力分配给业务的分析与建模,非常适合领域驱动设计模式。Db First适合数据库成型后的一些复杂应用场景,比如复杂查询,或是榨取数据库性能。即便从零到一的项目,也可以项目后期使用Db First来应付这些场景。所以说不矛盾。
无论是学习JPA还是Mybatis,我们必须先安装一款趁手的数据库,这里我们推荐安装MySQL8.0.21.
MySQL8的下载与安装步骤。
1.去Oracle官网下载MySQL8.0.21

2.解压缩到c盘根目录:
C:\mysql-8.0.21-winx64
3.在C:\mysql-8.0.21-winx64,目录下新建my.ini配置文档。
[client]
port=3306
default-character-set=utf8mb4
[mysqld]
#设置为自己MYSQL的安装目录
basedir=C:\mysql-8.0.21-winx64
#设置为MYSQL的数据目录
datadir=C:\mysql-8.0.21-winx64\data
port=3306
character_set_server=utf8mb4
#将InnoDB设置为默认的引擎
default-storage-engine=INNODB
#开启查询缓存
explicit_defaults_for_timestamp=true
#skip-grant-tables
在C:\mysql-8.0.21-winx64,目录下新建init.sql配置文档。该文档的作用是初始化mysql密码。这里我们设置MySQL的管理员密码为’root’.
use mysql;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';
flush privileges;
在C:\mysql-8.0.21-winx64,目录下新建setup.bat批处理文件。
net stop MySQL
sc delete MySQL
SET dbhost=localhost
SET dbuser=root
SET dbpasswd=
SET dbName=
SET sqlpath=%~dp0
set MYSQL_HOME_TEMP=C:\mysql-8.0.21-winx64
set sqlfile=init.sql
setx /M "MYSQL_HOME" "C:\mysql-8.0.21-winx64"
setx /M "PATH" "%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;%MYSQL_HOME_TEMP%\bin"
cd C:\mysql-8.0.21-winx64
cd c:
mysqld --initialize-insecure --user=mysql
mysqld -install
net start mysql
mysql -h%dbhost% -u%dbuser% -p%dbpasswd% < %sqlpath%%sqlfile% --default-character-set=utf8
net stop mysql
net start mysql
以管理员身份运行setup.bat,完成自动化安装。
win+r,输入services.msc,在启动服务项中如果发现有名字为MySQL的服务正在运行,说明MySQL安装成功!
4.配好MySQL的环境变量
