12.2

在 IDEA 中实现每日总结管理系统步骤指南
一、前期准备(环境搭建与项目初始化)

  1. 确认开发环境
    JDK 版本:建议使用 JDK 1.8(兼容性强,适配多数 Java Web 框架),需提前配置好JAVA_HOME环境变量,可通过命令行输入java -version验证是否配置成功。
    IDEA 版本:推荐 IntelliJ IDEA 2022 及以上版本(支持更好的 Maven/Gradle 集成、Web 开发插件)。
    数据库:选择 MySQL 8.0(开源且易用),需安装 MySQL 服务并启动,可使用 Navicat 或 MySQL Workbench 管理数据库。
    Web 服务器:内置 Tomcat 9.0(IDEA 可直接集成,无需单独配置外部服务器)。
  2. 初始化 Java Web 项目
    打开 IDEA,点击「Create New Project」,选择「Maven」→ 勾选「Create from archetype」→ 找到「org.apache.maven.archetypes:maven-archetype-webapp」,点击「Next」。
    填写项目基本信息:
    GroupId:自定义(如com.student.daily,遵循反向域名规则)
    ArtifactId:项目名(如DailySummarySystem)
    Version:默认1.0-SNAPSHOT,点击「Next」。
    配置 Maven:选择本地 Maven 路径(若未安装,IDEA 可自动下载),勾选「Override」确认 Maven 配置文件路径,点击「Next」。
    选择项目保存路径,点击「Finish」,等待 Maven 自动下载依赖(首次创建可能耗时,需确保网络正常)。
    补全项目结构:默认生成的src/main下缺少java目录,右键src/main→「New」→「Directory」,命名为java,右键该目录→「Mark Directory as」→「Sources Root」;同理,在src/main下创建resources目录(标记为「Resources Root」),用于存放配置文件。
    二、数据库设计与创建(核心基础)
  3. 编写 SQL 脚本(按需求创建 3 张核心表)
    打开 MySQL 客户端(如 Navicat),新建数据库daily_summary_db,执行以下 SQL 脚本创建表:
    sql
    -- 1. 日报发表基本信息表(t_daily_report)
    CREATE TABLE t_daily_report (
    id INT PRIMARY KEY AUTO_INCREMENT COMMENT '日报编号(唯一)',
    publishdate CHAR(8) NOT NULL COMMENT '发表时间(格式:20241227)',
    stuno CHAR(8) NOT NULL COMMENT '学号(8位)',
    name VARCHAR(20) NOT NULL COMMENT '姓名',
    spenttime INT NOT NULL COMMENT '当天花费时间(分钟/小时,需明确单位,建议小时)',
    codeamount INT NOT NULL COMMENT '代码量(行)',
    blogsnumber INT NOT NULL COMMENT '发表博客数量(篇)',
    knowledgepoints TEXT NOT NULL COMMENT '所学知识点',
    state VARCHAR(10) NOT NULL DEFAULT '待审批' COMMENT '日报状态(待审批/通过/评分/退回)',
    dailyscore INT DEFAULT NULL COMMENT '日报评分(如0-100分,未评分则为NULL)',
    statereason VARCHAR(500) DEFAULT NULL COMMENT '日报评语',
    FOREIGN KEY (stuno) REFERENCES t_user(user_id) COMMENT '关联人员表学号'
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- 2. 站内消息表(t_message)
CREATE TABLE t_message (
id INT PRIMARY KEY AUTO_INCREMENT COMMENT '站内消息编号(唯一)',
category INT NOT NULL COMMENT '消息类别(0催交/1形式不合格/2内容不合格)',
sender_name VARCHAR(20) NOT NULL COMMENT '发送人姓名',
sender_no CHAR(8) NOT NULL COMMENT '发送人编码(学生学号/教师工号)',
receiver_name VARCHAR(20) NOT NULL COMMENT '接收人姓名',
receiver_no CHAR(8) NOT NULL COMMENT '接收人编码(学生学号)',
content TEXT NOT NULL COMMENT '消息内容',
state VARCHAR(10) NOT NULL DEFAULT '未读' COMMENT '消息状态(已读/未读)',
FOREIGN KEY (sender_no) REFERENCES t_user(user_id) COMMENT '关联发送人',
FOREIGN KEY (receiver_no) REFERENCES t_user(user_id) COMMENT '关联接收人'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- 3. 人员基本信息表(t_user)
CREATE TABLE t_user (
user_id CHAR(8) PRIMARY KEY COMMENT '人员ID(学生学号/教师工号,教师工号以0开头)',
user_name VARCHAR(20) NOT NULL COMMENT '姓名',
user_category INT NOT NULL COMMENT '人员类别(0学生/1小组长/2教师)',
group_no INT NOT NULL DEFAULT 0 COMMENT '组号(教师默认为0)'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- 插入测试数据(便于后续功能调试)
INSERT INTO t_user (user_id, user_name, user_category, group_no)
VALUES
('20230001', '张三', 0, 1), -- 学生(1组)
('20230002', '李四', 1, 1), -- 小组长(1组)
('02000069', '王老师', 2, 0); -- 教师
2. 配置数据库连接(IDEA 内关联)
打开 IDEA 右侧「Database」面板,点击「+」→「Data Source」→「MySQL」。
填写数据库连接信息:
Host:localhost(本地数据库)
Port:3306(MySQL 默认端口)
Database:daily_summary_db(刚创建的数据库名)
User:MySQL 用户名(如root)
Password:MySQL 密码(安装时设置的密码)
点击「Test Connection」,若提示「Success」则连接成功,点击「OK」保存配置。
三、项目架构设计(分层开发,符合 MVC 模式)

  1. 创建包结构(在src/main/java下)
    按功能分层创建包,便于代码管理,结构如下:
    plaintext
    com.student.daily
    ├── controller // 控制器(接收请求、返回响应,如登录、日报提交)
    ├── dao // 数据访问层(操作数据库,如查询用户、插入日报)
    ├── entity // 实体类(对应数据库表,如User、DailyReport)
    ├── service // 业务逻辑层(处理核心业务,如日报审核、消息发送)
    │ └── impl // 业务逻辑实现类(具体实现service接口方法)
    ├── util // 工具类(如数据库连接工具、日期格式化工具)
    └── filter // 过滤器(如登录验证,未登录用户不能访问功能页)
  2. 导入依赖(配置pom.xml)
    在pom.xml的标签内添加项目所需依赖(MySQL 驱动、Servlet、JSP、JSTL 等):
    xml
mysql mysql-connector-java 8.0.30 javax.servlet javax.servlet-api 4.0.1 provided javax.servlet.jsp jsp-api 2.2 provided javax.servlet.jsp.jstl jstl-api 1.2 org.apache.taglibs taglibs-standard-impl 1.2.5 org.projectlombok lombok 1.18.24 provided 添加后点击 IDEA 右下角「Import Changes」,下载依赖包。
posted @ 2026-01-14 19:30  muyuxiaxing  阅读(2)  评论(0)    收藏  举报