# thesis-advanced **Repository Path**: haobinjun/thesis-advanced ## Basic Information - **Project Name**: thesis-advanced - **Description**: 高级毕设管理系统,采用项目模块化管理 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-20 - **Last Updated**: 2026-01-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 毕业设计管理平台 > 基于 Maven + Servlet + MyBatis + MySQL + Axios 的前后端分离项目 [![JDK](https://img.shields.io/badge/JDK-8+-orange.svg)]() [![Maven](https://img.shields.io/badge/Maven-3.6+-red.svg)]() [![MySQL](https://img.shields.io/badge/MySQL-8.0+-blue.svg)]() [![License](https://img.shields.io/badge/License-Educational-green.svg)](#) ## 项目特点 - 📊 **Dashboard首页** - 统计卡片展示数据概览 - 🎨 **深蓝科技风UI** - 左侧侧边栏 + 模态弹窗 - 🔍 **搜索过滤** - 支持多条件筛选 - ✅ **批量操作** - 批量删除功能 - 🔐 **审核流程** - 学生选课需审核 - 📈 **进度管理** - 选题→开题→中期→答辩 --- ## 📦 环境准备 ### 一键安装所有工具(Windows 10/11) 以**管理员身份**打开 PowerShell 或命令提示符,依次执行以下命令: ```bash # 1. 安装 JDK 8 winget install -e --id EclipseAdoptium.Temurin.8.JDK # 2. 安装 Git winget install Git.Git # 3. 安装 MySQL(会下载 MySQL Installer) winget install -e --id Oracle.MySQL ``` > **注意**: Maven 暂不支持 winget 安装,请使用下面的手动安装命令。 --- ### 手动安装命令 #### 1️⃣ 安装 JDK 8 **方式一:使用 winget(推荐)** ```bash winget install -e --id EclipseAdoptium.Temurin.8.JDK ``` **方式二:使用 PowerShell 直接下载** ```powershell # 下载 JDK 8 Invoke-WebRequest -Uri "https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u432-b06/OpenJDK8U-jdk_x64_windows_hotspot_8u432b06.msi" -OutFile "$env:TEMP\jdk8.msi" # 安装 Start-Process msiexec.exe -ArgumentList "/i $env:TEMP\jdk8.msi /qn" -Wait ``` **验证安装:** ```bash java -version ``` --- #### 2️⃣ 安装 Maven **方式一:使用 Chocolatey** ```bash # 先安装 Chocolatey(如果没有) Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1')) # 安装 Maven choco install maven -y ``` **方式二:使用 Scoop** ```bash # 先安装 Scoop(如果没有) Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression # 安装 Maven scoop install maven ``` **方式三:手动安装(PowerShell 脚本)** ```powershell # 创建 Maven 目录 $MavenHome = "C:\Maven" New-Item -ItemType Directory -Force -Path $MavenHome # 下载 Maven 3.9.12 Invoke-WebRequest -Uri "https://dlcdn.apache.org/maven/maven-3/3.9.12/binaries/apache-maven-3.9.12-bin.zip" -OutFile "$MavenHome\maven.zip" # 解压 Expand-Archive -Path "$MavenHome\maven.zip" -DestinationPath $MavenHome -Force # 添加到环境变量 $Env:MAVEN_HOME = "$MavenHome\apache-maven-3.9.12" $Env:PATH += ";$Env:MAVEN_HOME\bin" # 永久添加到系统 PATH [Environment]::SetEnvironmentVariable("MAVEN_HOME", "$MavenHome\apache-maven-3.9.12", "Machine") [Environment]::SetEnvironmentVariable("PATH", [Environment]::GetEnvironmentVariable("PATH", "Machine") + ";$MavenHome\apache-maven-3.9.12\bin", "Machine") ``` **验证安装:** ```bash mvn -version ``` --- #### 3️⃣ 安装 MySQL **方式一:使用 winget** ```bash winget install -e --id Oracle.MySQL ``` > 安装完成后,运行 MySQL Installer 选择 **MySQL Server 8.0** 进行安装 **方式二:使用 Chocolatey** ```bash choco install mysql -y ``` **方式三:手动下载安装(PowerShell 脚本)** ```powershell # 下载 MySQL Installer Invoke-WebRequest -Uri "https://dev.mysql.com/get/Downloads/MySQLInstaller/mysql-installer-community-8.0.44.0.msi" -OutFile "$env:TEMP\mysql-installer.msi" # 运行安装器 Start-Process msiexec.exe -ArgumentList "/i $env:TEMP\mysql-installer.msi" -Wait ``` **验证安装:** ```bash mysql --version ``` --- #### 4️⃣ 安装 Git(可选) ```bash winget install Git.Git ``` **验证安装:** ```bash git --version ``` --- ## 🚀 快速开始 ### 1️⃣ 获取项目 **方式一:从 Gitee 克隆** ```bash git clone https://gitee.com/你的用户名/毕业设计管理平台.git cd 毕业设计管理平台 ``` **方式二:下载 ZIP** - 访问项目 Gitee 页面 - 点击 **"克隆/下载"** → **"下载ZIP"** - 解压到本地目录 ### 2️⃣ 配置数据库密码 编辑文件:`project-admin/src/main/resources/db.properties` ```properties db.password=你的MySQL密码 ``` ### 3️⃣ 初始化数据库 **Windows:** ```bash mysql -u root -p < project-admin\src\main\resources\schema.sql ``` **或直接双击运行:** `init-database.bat` ### 4️⃣ 启动项目 **方式一:使用启动脚本** ```bash start.bat ``` **方式二:使用 Maven** ```bash cd project-admin mvn jetty:run ``` ### 5️⃣ 访问系统 浏览器打开:**http://localhost:8082/graduation/static/index.html** --- ## 📁 项目结构 ``` 毕业设计管理平台/ ├── README.md # 项目文档 ├── start.bat # 启动脚本 ├── init-database.bat # 数据库初始化脚本 ├── check-config.bat # 配置检查脚本 ├── pom.xml # Maven根配置 └── project-admin/ # 主项目模块 ├── pom.xml # Maven项目配置 └── src/main/ ├── java/ # Java源码 │ └── com/project/ │ ├── entity/ # 实体类 │ ├── dao/ # 数据访问层 │ ├── service/ # 业务逻辑层 │ ├── servlet/ # 控制层 │ └── util/ # 工具类 ├── resources/ # 配置文件 │ ├── mybatis-config.xml # MyBatis配置 │ ├── schema.sql # 数据库初始化脚本 │ ├── db.properties # 数据库配置 │ └── mapper/ # MyBatis映射文件 └── webapp/ # Web应用目录 ├── WEB-INF/ │ └── web.xml # Web应用配置 └── static/ ├── css/ │ └── style.css # 样式文件 ├── js/ │ ├── api.js # API封装 │ ├── project.js # 课题管理 │ ├── student.js # 学生管理 │ └── enrollment.js # 选课管理 └── *.html # HTML页面 ``` --- ## 🔐 数据库表结构 | 表名 | 说明 | 主要字段 | |------|------|---------| | `project` | 课题表 | id, title, description, category, difficulty, capacity, enrolled, status | | `student_info` | 学生表 | id, student_id, name, class_name, major, phone, email | | `enrollment` | 选课记录表 | id, project_id, student_id, status, progress, enroll_time | --- ## 🚀 功能模块 | 模块 | 功能 | 说明 | |------|------|------| | **Dashboard** | 数据统计 | 课题总数、开放中课题、已选课人数、学生总数 | | **课题管理** | 增删改查 | 课题的添加、编辑、删除、批量删除、搜索过滤 | | **学生管理** | 学生信息管理 | 学生信息的添加、编辑、删除、按班级搜索 | | **选课管理** | 选课与审核 | 学生选课、教师审核(待审核/已通过/已拒绝)、进度管理(选题→开题→中期→答辩) | --- ## 📝 配置说明 ### ⚠️ 必须修改的配置 **数据库密码配置** 编辑文件:`project-admin/src/main/resources/db.properties` ```properties # 请修改为你的MySQL root用户密码 db.password=你的MySQL密码 ``` ### 📌 默认配置 | 配置项 | 默认值 | 说明 | |--------|--------|------| | 服务端口 | 8082 | 可在 `project-admin/pom.xml` 中修改 | | 数据库名 | graduation_db | 数据库名称 | | 数据库用户 | root | 使用root用户连接 | | 测试数据 | 8个课题 + 10个学生 | 首次初始化自动导入 | --- ## ⚡ 常见问题
1. 端口8082被占用怎么办? 编辑 `project-admin/pom.xml`,找到并修改端口号: ```xml 8082 ``` 修改后访问地址变为:`http://localhost:8083/graduation/static/index.html`
2. Maven依赖下载速度慢? 配置阿里云镜像加速: 1. 打开 Maven 配置文件:`C:\Maven\conf\settings.xml` (或你的Maven安装目录) 2. 在 `` 标签内添加: ```xml aliyun central Aliyun Maven https://maven.aliyun.com/repository/public ```
3. 数据库连接失败? 请检查以下几点: 1. **MySQL服务是否启动** ```bash # Windows查看服务 services.msc # 找到 MySQL80 服务并启动 ``` 2. **密码是否正确** - 检查 `db.properties` 中的密码是否与MySQL root密码一致 3. **数据库是否创建** ```bash mysql -u root -p # 输入密码后执行: SHOW DATABASES; # 应该能看到 graduation_db ```
4. 找不到或无法加载主类? 这是Maven依赖未下载完整,执行: ```bash cd project-admin mvn clean install ```
5. winget 命令不可用? 更新 Windows Package Manager: ```bash winget upgrade ``` 或访问 [winget 官网](https://learn.microsoft.com/zh-cn/windows/package-manager/) 安装最新版本。
--- ## 🤝 贡献指南 欢迎提交 Issue 和 Pull Request! 1. Fork 本仓库 2. 创建特性分支 (`git checkout -b feature/AmazingFeature`) 3. 提交更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 开启 Pull Request --- ## 📄 许可证 本项目仅用于教学目的。 --- ## 🔗 相关链接 - [Eclipse Temurin](https://adoptium.net/) - [Apache Maven](https://maven.apache.org/) - [MySQL](https://www.mysql.com/) - [MyBatis 文档](https://mybatis.org/mybatis-3/zh/index.html) ---
**如果这个项目对你有帮助,请给一个 ⭐️** Made with ❤️