在Spring Boot项目中连接MySQL 8数据库的完整指南

作为一名刚入行的小白,连接MySQL 8数据库并使用Spring Boot进行开发可能会让你感到困惑。本文将引导你完成这一过程,帮助你快速上手。

流程步骤

以下是连接MySQL 8数据库的总体流程:

| 步骤    | 操作                                    |
| ------- | --------------------------------------- |
| 步骤1   | 创建Spring Boot项目                     |
| 步骤2   | 添加MySQL依赖                           |
| 步骤3   | 配置数据库连接信息                     |
| 步骤4   | 创建实体类和数据库表                  |
| 步骤5   | 创建Spring Data JPA接口                |
| 步骤6   | 创建服务类                              |
| 步骤7   | 测试连接数据库                          |

每一步详细说明

步骤1:创建Spring Boot项目

可以使用Spring Initializr生成项目骨架。访问 [Spring Initializr](

  • 选择项目:Maven Project
  • 语言:Java
  • Spring Boot版本:选择最新稳定版(如2.5.x)
  • Packaging:选择Jar
  • 依赖:选择Spring Web, Spring Data JPA, MySQL Driver

生成项目后,你会得到一个.zip文件,解压并导入到你的IDE(如IntelliJ IDEA或Eclipse)中。

步骤2:添加MySQL依赖

pom.xml里,你会看到生成的项目基础依赖。在<dependencies>标签内加入MySQL相关依赖:

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.27</version> <!-- 确保使用与MySQL版本匹配的Connector版本 -->
</dependency>

步骤3:配置数据库连接信息

src/main/resources/application.properties文件中,添加以下配置:

spring.datasource.url=jdbc:mysql://localhost:3306/your_database_name?useSSL=false&allowPublicKeyRetrieval=true
spring.datasource.username=your_username
spring.datasource.password=your_password
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true
  • spring.datasource.url:MySQL连接URL,确保替换为你的数据库名称。
  • spring.datasource.username:数据库用户名。
  • spring.datasource.password:数据库密码。
  • spring.jpa.hibernate.ddl-auto:配置Hibernate的DDL策略(可以选择update)。
  • spring.jpa.show-sql:设置为true以在控制台中查看SQL状态。

步骤4:创建实体类和数据库表

选择你的实体类所在的包,创建一个新类:

package com.example.demo.entity; // 替换为你的包名

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;

@Entity // 声明这是一个实体类
public class User {
    
    @Id // 主键
    @GeneratedValue(strategy = GenerationType.IDENTITY) // 主键自增
    private Long id;

    private String name;

    private String email;

    // getters和setters省略
}

步骤5:创建Spring Data JPA接口

在相同包或新包中创建一个接口:

package com.example.demo.repository; // 替换为你的包名

import com.example.demo.entity.User; // 导入你的实体类
import org.springframework.data.jpa.repository.JpaRepository;

public interface UserRepository extends JpaRepository<User, Long> {
    // 继承JpaRepository, 实现CRUD功能
}

步骤6:创建服务类

在项目中创建一个服务类,协调控制器与Repository之间的关系。

package com.example.demo.service; // 替换为你的包名

import com.example.demo.entity.User;
import com.example.demo.repository.UserRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service // 声明为服务类
public class UserService {

    @Autowired
    private UserRepository userRepository;

    public List<User> findAll() {
        return userRepository.findAll(); // 查询所有用户
    }

    public User save(User user) {
        return userRepository.save(user); // 保存用户
    }
}

步骤7:测试连接数据库

创建一个控制器来测试数据库连接。

package com.example.demo.controller; // 替换为你的包名

import com.example.demo.entity.User;
import com.example.demo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController // 声明为控制器类
@RequestMapping("/users") // 设定请求路径
public class UserController {

    @Autowired
    private UserService userService;

    @GetMapping
    public List<User> getAllUsers() {
        return userService.findAll(); // 获取所有用户
    }

    @PostMapping
    public User createUser(@RequestBody User user) {
        return userService.save(user); // 创建新用户
    }
}

数据模型关系图

下面是用户实体之间的关系模型(在本例中比较简单):

erDiagram
    USER {
        Long id
        String name
        String email
    }

结尾

至此,你已完成了使用Spring Boot连接MySQL 8数据库的基本步骤。开始你的开发之旅吧,记住,代码的每一个注释都是你理解和学习过程的重要部分。随着经验的丰富,你将能更自如地掌握复杂的应用架构和数据库交互。祝你好运!