Mysql 8.x springboot连接配置

本文介绍了如何在SpringBoot项目中适配MySQL 8.0及以上版本,包括调整数据源配置和驱动类名,以及URL参数的更新。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

现在很多项目mysql都升级到了8.0以上版本,那么对应的springboot配置文件也要修改

        <!-- 引入Spring封装的jdbc,内部默认依赖了 HikariDataSource  数据源-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jdbc</artifactId>
        </dependency>
 
        <!-- web项目启动模块-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
 
        <!-- mysql数据库连接驱动-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
            <version>8.0.16</version>
        </dependency>

高版本的 spring boot 搭配 mysql 8.x驱动版本较高时,如 mysql-connector-java:8.0.16,此时 driver-class-name 的值要带 cj;url 的值要带时区 serverTimezone,如:

spring:
  datasource:

        url: jdbc:mysql://127.0.0.1:3306/test?characterEncoding=UTF-8&serverTimezone=UTC
        driver-class-name: com.mysql.cj.jdbc.Driver

### Spring Boot 连接 MySQL 5.7.31 的配置方法 #### 添加依赖项 为了使应用程序能够与 MySQL 数据库通信,需在 `pom.xml` 文件中加入相应的 JDBC 驱动依赖。对于 MySQL 5.7 版本而言,应该使用匹配的驱动版本[^2]。 ```xml <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <!-- 使用适合 MySQL 5.7.x 的驱动 --> <version>5.1.49</version> <!-- 或者其他兼容于 MySQL 5.7 的版本 --> </dependency> ``` #### 应用属性设置 接着,在项目的 `application.properties` 或 `application.yml` 中定义数据源的相关参数来指定目标数据库的信息以及连接池的行为特性等[^1]。 如果采用 `.properties` 格式的文件,则如下所示: ```properties spring.datasource.url=jdbc:mysql://localhost:3306/your_database_name?useSSL=false&serverTimezone=UTC spring.datasource.username=root spring.datasource.password=password spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver ``` 而当选用 YAML 方式表达时可以这样写: ```yaml spring: datasource: url: jdbc:mysql://localhost:3306/your_database_name?useSSL=false&serverTimezone=UTC username: root password: password driver-class-name: com.mysql.cj.jdbc.Driver ``` 上述 URL 参数中的 `useSSL=false` 表明禁用了 SSL 加密;`serverTimezone=UTC` 设置服务器端的时间区域为 UTC 时间标准,这有助于防止由于不同地区时间差异引起的问题。 #### 创建实体类和 Repository 接口 为了让 Spring Data JPA 能够自动创建表结构并执行 CRUD 操作,还需要编写对应的 Java 实体类映射到数据库表格,并声明继承自 `JpaRepository` 接口的数据访问层接口。 例如有一个名为 User 的用户信息表,那么就可以按照下面的方式构建模型对象及其持久化逻辑组件: ```java @Entity @Table(name = "users") public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name; private Integer age; // Getters and Setters... } ``` ```java import org.springframework.data.jpa.repository.JpaRepository; public interface UserRepository extends JpaRepository<User, Long> {} ``` 完成这些步骤之后,启动 Spring Boot 应用即可建立起同 MySQL 5.7 数据库之间的稳定链接关系,进而支持后续业务功能模块的设计开发工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值