docs: add day one task

This commit is contained in:
seahi 2024-12-17 12:41:26 +08:00
parent 109bbad34b
commit fb591545dc

127
README.md
View File

@ -3,30 +3,123 @@
一个基于Java Swing的学生请假管理系统使用JDBC连接MySQL数据库。
## 项目结构
```
src/
├── main/
│ └── java/
│ └── com/
│ └── absence/
│ ├── dao/ # 数据访问层
│ ├── model/ # 数据模型
│ ├── ui/ # 图形界面
│ ├── util/ # 工具类
│ └── Main.java # 程序入口
```
AbsenceManager/
├── src/ # 源代码目录
│ ├── dao/ # 数据访问层
│ │ └── impl/ # DAO接口实现类
│ ├── service/ # 业务逻辑层
│ ├── model/ # 数据模型层
│ ├── gui/ # 图形界面层
│ └── util/ # 工具类
├── lib/ # 第三方依赖库
├── sql/ # 数据库相关文件
│ └── init.sql # 数据库初始化脚本
└── README.md # 项目说明文档
## 技术栈
- Java SE
- Java Swing (GUI界面)
- JDBC (数据库连接)
- MySQL (数据库)
- JDBC (数据库连接)
## 功能特性
- 学生信息管理
- 请假申请管理
- 请假审批流程
- 统计报表
1. 用户管理
- 学生账号登录
- 教师账号登录
- 基本信息维护
2. 请假申请
- 学生提交日常出校申请
- 支持多种请假类型(学习、就医、办事等)
- 自动计算请假时长
- 是否离津标记
- 详细事由说明
3. 请假审批
- 教师查看待审批申请
- 按状态筛选(待审批、已通过、已拒绝)
- 教师审批处理
- 审批意见填写
- 审批结果通知
4. 信息查询
- 学生查看个人请假记录
- 教师查看所有请假记录
- 按时间范围查询
- 按审批状态筛选
- 双击查看详细信息
5. 界面特性
- 简洁美观的Swing界面
- 分页显示数据
- 表格化展示信息
- 详情对话框展示
## 运行环境要求
- JDK 8 或更高版本
- MySQL 5.7 或更高版本
- IDE推荐使用IntelliJ IDEA
## 任务步骤
## Day 1 - 项目框架搭建
### 任务步骤
1. 项目初始化
- 创建Java项目
- 建立项目目录结构src, lib, sql等参考“项目结构”部分
- 导入必要的第三方库mysql-connector-java.jar
2. 数据库配置
- 创建MySQL数据库absence_manager
- 运行sql/init.sql脚本创建表结构
- 配置数据库连接src/util/DatabaseUtil.java
3. 实现学生实体类model/Student.java
```java
public class Student {
private int id; // 数据库主键ID
private String studentId; // 学号
private String name; // 学生姓名
private String className; // 班级
private String contact; // 联系方式
private String college; // 学院
private String major; // 专业
private String password; // 登录密码
// 构造方法
// getter和setter方法
}
```
4. 测试运行
- 测试数据库连接
- 确保项目能够正常编译运行
### 完成标准
- [ ] 项目结构完整,包含所有必要的目录
- [ ] 成功导入所需的第三方库
- [ ] 数据库表结构创建完成
- [ ] 数据库连接配置正确
- [ ] Student类实现完整包含所有必要的属性和方法
- [ ] 项目可以正常编译运行
### 注意事项
1. 建立项目时注意包结构的规范性
2. 数据库字符集使用utf8mb4避免中文乱码
3. 代码编写要规范,加上必要的注释
4. 提交代码前进行本地测试,确保无编译错误
### 参考代码
![](https://static.seahi.me/2024/12/202412171225346.png)
![](https://static.seahi.me/2024/12/202412171226194.png)