SSM 实现学生成绩管理系统(完整代码)

简介

本文基于Spring+SpringMVC+Mybatis实现一个简单的学生成绩管理系统,实现三层架构。它在上一JavaWeb版本基础上使用了SSM框架,优化了相关功能,使用分页模型对所有学生信息进行显示。

完整代码见

任务


相关工作

本项目基于以上进行改进。主要改进内容有:

更新日志(已经在github上更新)

    21/4/23: 实现Spring注解式事务管理,进行测试。 21/4/28: 优化了SpringMVC拦截器的功能 ,对静态资源文件和登录/注册之外所有请求路径进行拦截;修复了查询结果页面导航图标点击没反应的问题。

项目结构

这是一个maven工程。

└─main
    ├─java
    │  └─indi
    │      └─huishi
    │          ├─controller 控制器
    │          ├─dao		持久层,和数据库交互
    │          │  └─impl
    │          ├─handler	处理异常
    │          ├─interceptor拦截器判断登录状态
    │          ├─pojo		实体类 Student User
    │          ├─service	业务层
    │          │  └─impl	实现类
    │          ├─test		测试
    │          │  └─basic
    │          └─utils
    ├─resources				配置文件
    │  └─indi
    │      └─huishi
    │          └─dao
    └─webapp
        ├─META-INF
        ├─pages
        │  ├─common			页面通用部分
        │  ├─error			错误页面
        │  ├─menu			主菜单:学生信息处理相关所有页面
        │  ├─test
        │  ├─useless
        │  └─user			登录和注册
        ├─static
        │  ├─css			样式
        │  ├─img			图片
        │  └─script			jquery
        └─WEB-INF
            ├─classes
            │  └─indi
            │      └─huishi
            │          ├─controller
            │          ├─dao
            │          ├─handler
            │          ├─interceptor
            │          ├─pojo
            │          ├─service
            │          │  └─impl
            │          ├─test
            │          │  └─basic
            │          └─utils
            └─lib

数据库

使用MySQL实现,和上一版本的区别:学生表的主键和学号字段分离。主键将不再面向用户出现。

USE student_score_ssm;

CREATE TABLE student_score(
	id INT PRIMARY KEY AUTO_INCREMENT,
	NO VARCHAR(10) UNIQUE NOT NULL,
	NAME VARCHAR(20) NOT NULL,
	score FLOAT(20),
	class_name INT
);


CREATE TABLE USER(
	id INT PRIMARY KEY AUTO_INCREMENT,
	username VARCHAR(20) UNIQUE,
	PASSWORD VARCHAR(20) NOT NULL,
	email VARCHAR(20)
);

结果页面

主页

查询

查询异常

增加

修改

删除

统计

登录

注册

经验分享 程序员 微信小程序 职场和发展