CONFIGURATION.md 5.1 KB

配置指南

本文档说明项目各模块的配置方法


1. 后端配置

1.1 配置文件位置

后端配置文件位于:edu_game_backend/src/main/resources/application.yml

1.2 服务端口配置

server:
  port: 8080
  servlet:
    encoding:
      charset: UTF-8
      enabled: true
      force: true
  tomcat:
    connection-timeout: 60000

| 配置说明:

  • port: 服务监听端口,默认8080
  • connection-timeout: 连接超时时间(毫秒)

1.3 数据库配置

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/edu_game?useUnicode=true&characterEncoding=UTF-8&connectionCollation=utf8mb4_unicode_ci&allowPublicKeyRetrieval=true&useSSL=false&serverTimezone=GMT%2B8
    username: root
    password: 123456
    driver-class-name: com.mysql.cj.jdbc.Driver
配置项 说明
url 数据库连接地址
username 数据库用户名
password 数据库密码
driver-class-name JDBC驱动类名

**本地开发环境配置示例:

url: jdbc:mysql://localhost:3306/edu_game
username: root
password: 你的密码

生产环境配置示例:

url: jdbc:mysql://你的数据库地址:3306/edu_game
username: 生产用户名
password: 生产密码

1.4 应用配置

spring:
  application:
    name: edu-game-backend
  mvc:
    async:
      request-timeout: 60000
  sql:
    init:
      encoding: UTF-8
      mode: always
      schema-locations: classpath:db/mysql/init.sql
配置项 说明
application.name 应用名称
mvc.async.request-timeout 异步请求超时时间(毫秒)
sql.init.mode 数据库初始化模式
sql.init.schema-locations 初始化脚本位置

2. 前端配置

2.1 开发环境配置

前端配置文件位于:edu_game_frontend/vite.config.js

2.2 Vite配置

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'

const devApiTarget = process.env.VITE_DEV_API_TARGET || 'http://localhost:8080'

export default defineConfig({
  plugins: [vue()],
  server: {
    port: 5173,
    proxy: {
      '/api': {
        target: devApiTarget,
        changeOrigin: true,
      },
    },
  },
})
配置项 说明
server.port 开发服务器端口,默认5173
proxy.'/api'.target 后端API代理地址

2.3 环境变量

可以通过环境变量修改后端地址:

Windows PowerShell:

$env:VITE_DEV_API_TARGET = "http://你的后端地址:8080"
npm run dev

Windows CMD:

set VITE_DEV_API_TARGET=http://你的后端地址:8080
npm run dev

Linux/Mac:

export VITE_DEV_API_TARGET=http://你的后端地址:8080
npm run dev

3. Unity端配置

3.1 服务器地址配置

在Unity项目中,服务器地址通常在以下脚本中配置,主要文件:`EducationGame/Assets/Scripts/Login/NetworkManager.cs

默认配置为:http://localhost:8080

修改方法:

  1. 打开Unity项目
  2. 找到NetworkManager脚本
  3. 修改服务器地址变量
  4. 保存并重新编译

4. 数据库初始化

4.1 初始化脚本

数据库初始化脚本位于:edu_game_backend/src/main/resources/db/mysql/init.sql

4.2 手动初始化步骤

**方式一:自动初始化(推荐)

启动Spring Boot应用时,会自动执行初始化脚本,前提是:

  1. 数据库已创建
  2. 配置正确的用户有足够权限

方式二:手动执行SQL

# 登录MySQL
mysql -u root -p

# 创建数据库
CREATE DATABASE edu_game DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

# 使用数据库
USE edu_game;

# 执行初始化脚本
SOURCE /path/to/init.sql;

5. 默认账号

5.1 管理员账号

系统初始化时会自动创建管理员账号:

  • 用户名: admin
  • 密码: admin123

5.2 测试账号

如需创建测试用户,请通过注册接口自行创建


6. 部署配置

6.1 后端部署

使用Maven构建:

cd edu_game_backend
mvn clean package

**运行JAR包:

java -jar target/edu-game-backend-0.0.1-SNAPSHOT.jar

**生产环境建议使用application-prod.yml配置文件


6.2 前端部署

**构建生产版本:

cd edu_game_frontend
npm install
npm run build

构建产物位于 dist/ 目录

Nginx配置示例:

server {
    listen 80;
    server_name your-domain.com;

    location / {
        root /path/to/dist;
        try_files $uri $uri/ /index.html;
    }

    location /api {
        proxy_pass http://backend-server:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

7. 常见问题

7.1 数据库连接失败

检查项:

  • MySQL服务是否启动
  • 数据库地址、端口是否正确
  • 用户名密码是否正确
  • 数据库是否已创建
  • 防火墙是否允许连接

7.2 前端无法访问后端

检查项:

  • 后端服务是否启动
  • 端口是否被占用
  • 防火墙是否允许访问
  • 前端代理配置是否正确