ruoyi 前后端分离项目 mysql 配置

1. 引言

ruoyi 是一套企业级的快速开发框架,采用前后端分离的开发模式,使开发更加灵活高效。在 ruoyi 项目中,我们经常需要与数据库进行交互,而 MySQL 是一种常用的关系型数据库管理系统。本文将介绍如何在 ruoyi 项目中配置 MySQL 数据库,以及在前后端分离的项目中进行数据库操作。

2. MySQL 数据库的配置

在 ruoyi 项目中,我们可以通过配置文件来指定数据库的连接信息。打开 ruoyi-admin 模块下的 resources 文件夹,找到 application.yml 文件,修改其中的数据库配置信息。

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/ruoyi?useSSL=false&serverTimezone=UTC&characterEncoding=utf8
    username: root
    password: 123456
    driver-class-name: com.mysql.cj.jdbc.Driver

上述配置中,url 指定了数据库的连接地址,usernamepassword 分别指定了数据库的用户名和密码,driver-class-name 指定了数据库驱动程序的类名。你需要根据自己的实际情况进行修改。

3. 数据库操作示例

在 ruoyi 项目中,我们可以使用 MyBatis Plus 来进行数据库操作。下面是一个简单的示例,演示如何在 ruoyi 项目中使用 MyBatis Plus 进行数据库的增删改查操作。

3.1. 创建实体类

首先,我们需要创建一个实体类来映射数据库中的表结构。在 java 目录下创建一个 com.example.demo.entity 包,然后在该包下创建一个 User 类。

@Data
@TableName("user")
public class User {
    @TableId
    private Long id;
    private String username;
    private String password;
}

上述代码使用了 @Data 注解来自动生成 getter 和 setter 方法,@TableName 注解用于指定表名,@TableId 注解用于指定主键字段。

3.2. 创建 Mapper 接口

接下来,我们需要创建一个 Mapper 接口来定义数据库操作的方法。在 java 目录下创建一个 com.example.demo.mapper 包,然后在该包下创建一个 UserMapper 接口。

@Mapper
public interface UserMapper extends BaseMapper<User> {
}

上述代码使用了 @Mapper 注解来标识该接口是一个 Mapper 接口,继承了 BaseMapper 接口,这样就可以直接使用 MyBatis Plus 提供的通用方法进行数据库操作。

3.3. 编写控制器

最后,我们需要编写一个控制器来处理前端请求,并调用对应的数据库操作方法。在 java 目录下创建一个 com.example.demo.controller 包,然后在该包下创建一个 UserController 类。

@RestController
@RequestMapping("/user")
public class UserController {
    @Autowired
    private UserMapper userMapper;

    @GetMapping("/list")
    public List<User> list() {
        return userMapper.selectList(null);
    }

    @PostMapping("/save")
    public boolean save(@RequestBody User user) {
        return userMapper.insert(user) > 0;
    }
}

上述代码使用了 @RestController 注解来标识该类是一个控制器,@RequestMapping 注解用于指定请求的路径。@Autowired 注解用于自动注入 UserMapper 对象,然后我们可以在方法中直接调用该对象的方法进行数据库操作。

4. 总结

通过以上步骤,我们成功配置了 MySQL 数据库,并在 ruoyi 项目中进行了数据库操作。在实际开发中,我们可以根据业务需求编写更复杂的数据库操作方法。希望本文对你理解 ruoyi 项目的数据库配置和操作有所帮助。

附录

状态图

stateDiagram
    [*] --> Idle
    Idle --> Connected : connect()
    Connected --> Idle : close()
    Connected --> Querying : query()
    Querying --> Connected : close()

类图

classDiagram
    User <|--