一. 小知识
mysql-connector-java 和 mysql-connector-j 的区别
mysql-connector-java 和 mysql-connector-j 实际上指的是同一个MySQL官方提供的JDBC驱动程序,但它们代表了这个驱动在不同时间点的命名。
- mysql-connector-java:这是旧的命名方式,长期以来用于指代MySQL官方提供的JDBC驱动。如果你之前使用过MySQL与Java应用程序进行交互,你可能会熟悉这个名字,并且在Maven依赖中也是以mysql-connector-java作为artifactId来引用的。
- mysql-connector-j:从某个版本开始(大约是2022年),MySQL官方决定将JDBC驱动的名称更改为mysql-connector-j。这次更名主要是品牌统一和清晰度提升的一部分,意在更好地反映产品为Java语言提供连接的能力。不过,尽管名字改变了,它仍然是原来的JDBC驱动,功能和用途没有改变。
旧版本坐标(适用于 8.0.30 及之前):
<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.30</version>
</dependency>
新版本坐标(适用于 8.0.31 及之后):
<dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><version>8.0.31</version>
</dependency>
二. 开始引入
1. 添加依赖
首先,在pom.xml
文件中添加MySQL、Spring Data JPA(可选)、MyBatis-Plus以及HikariCP相关的依赖:
<dependencies><!-- MySQL Connector Java --><dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><version>8.0.31</version><scope>runtime</scope></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-spring-boot3-starter</artifactId><version>3.5.9</version></dependency><!-- Spring Boot Starter Data JPA --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jpa</artifactId></dependency>
</dependencies>
2. 配置数据源
yml配置文件
spring:datasource:# 数据库连接URL,包括数据库名、是否使用SSL及服务器时区设置等参数url: jdbc:mysql://localhost:3306/xxx?useSSL=false&serverTimezone=UTC&rewriteBatchedStatements=true# 参数解释:# useSSL=false: 禁用SSL连接(适用于本地或信任网络环境)# serverTimezone=UTC: 设置服务器时区为UTC(根据实际情况调整)# rewriteBatchedStatements=true: 启用批量执行优化,减少与数据库服务器之间的往返次数username: root # 数据库用户名password: xxx # 数据库密码driver-class-name: com.mysql.cj.jdbc.Driver # JDBC驱动类名hikari: # HikariCP连接池配置maximum-pool-size: 10 # 连接池允许的最大连接数minimum-idle: 5 # 连接池保持的最小空闲连接数idle-timeout: 30000 # 空闲连接超时时间,单位为毫秒pool-name: myHikariCP # 连接池的名字max-lifetime: 1800000 # 连接存活的最大生命周期,单位为毫秒connection-timeout: 30000 # 等待一个数据库连接的最大毫秒数mybatis-plus:## MyBatis-Plus的相关配置mapper-locations: classpath*:/mapper/**/*.xml # Mapper XML文件的位置global-config: # 全局配置db-config: # 数据库配置## 生成ID方式: AUTO 数据库自增 INPUT 自己输入 ASSIGN_UUID 默认生成器#id-type: auto # 主键生成策略## 逻辑删除字段logic-delete-field: deleted # 逻辑删除字段名,默认为deleted## 逻辑删除已删除值logic-delete-value: 1 # 逻辑删除后字段的值,默认为1## 逻辑删除未删除值logic-not-delete-value: 0 # 逻辑未删除时字段的值,默认为0configuration: # MyBatis核心配置## 自动驼峰命名规则映射map-underscore-to-camel-case: true # 开启自动将下划线命名转换为驼峰命名log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 日志实现类,这里设置为标准输出日志实现,便于调试
3. Mapper接口所在的包路径
@MapperScan("com.xxx.mapper")