基于SSM的班主任助理系统(源码+L文+说明文档)
目录
4 系统设计
班主任助理系统的设计方案比如功能框架的设计,比如数据库的设计的好坏也就决定了该系统在开发层面是否高效,以及在系统维护层面是否容易维护和升级,因为在系统实现阶段是需要考虑用户的所有需求,要是在设计阶段没有经过全方位考虑,那么系统实现的部分也就无从下手,所以系统设计部分也是至关重要的一个环节,只有根据用户需求进行细致全面的考虑,才有希望开发出功能健全稳定的程序软件。
4.1 系统概要设计
本次拟开发的系统为了节约开发成本,也为了后期在维护和升级上的便利性,打算通过浏览器来实现系统功能界面的展示,让程序软件的主要事务集中在后台的服务器端处理,前端部分只用处理少量的事务逻辑。下面使用一张图(如图4.1所示)来说明程序的工作原理。
图4.1 程序工作的原理图
4.2 系统功能结构设计
在分析并得出使用者对程序的功能要求时,就可以进行程序设计了。如图4.2展示的就是管理员功能结构图,管理员主要负责填充学生和其类别信息,并对已填充的数据进行维护,包括修改与删除等。
图4.2 系统功能结构图
4.3 数据库设计
程序功能操作不管是添加,修改,还是删除等功能产生的数据都是经由数据库进行数据保存和更新的,所以一个数据库设计的好坏也是程序是否好坏的判定标准,因为程序的成功,有一半的功劳都是靠数据库的优秀设计。数据库一旦设计得良好是可以减轻开发人员的开发负担的。
4.3.1 数据库E-R图设计
这个部分的设计需要使用到E-R图绘制工具,常用的工具就是Visio工具来绘制E-R模型图,这款工具不仅可以快速创建需要的E-R模型图,而且该工具提供的操作界面很简单,可以短时间内修改绘图界面的图形或者是文字的属性。在绘制E-R模型图时,要分清楚各个图形代表的含义,以免绘制出错,E-R模型图由长方形(实体),椭圆形(属性),菱形(关系)这三部分图形符号组成,绘制期间要区分开来,用准确的图形符号代表相应的数据元素。
各个实体之间的联系用下图的E-R图表示。绘制的系统E-R图见图4.8。
图4.8 系统E-R图
4.3.2 数据库表结构设计
数据库系统一旦选定之后,需要根据程序要求在数据库中建立数据库文件,并在已经完成创建的数据库文件里面,为程序运行中产生的数据建立对应的数据表格,数据表结构设计就是对创建的数据表格进行字段设计,字段长度设计,字段类型设计等,当数据表格合理设计完成之后,才能正常存储相关程序运行产生的数据信息。
表4.1 成绩表
序号 | 列名 | 数据类型 | 说明 | 允许空 |
1 | id | int(11) | 主键 | 否 |
2 | yonghu_id | int(11) | 用户 | 是 |
3 | exam_name | varchar(200) | 考试名称 | 是 |
4 | kemu_types | int(11) | 科目 | 是 |
5 | fraction | decimal(10,4) | 分数 | 是 |
6 | create_time | timestamp | 创建时间 | 是 |
表4.2 字典表
序号 | 列名 | 数据类型 | 说明 | 允许空 |
1 | id | bigint(20) | 主键 | 否 |
2 | dic_code | varchar(200) | 字段 | 是 |
3 | dic_name | varchar(200) | 字段名 | 是 |
4 | code_index | int(11) | 编码 | 是 |
5 | index_name | varchar(200) | 编码名字 | 是 |
6 | super_id | int(11) | 父字段id | 是 |
7 | create_time | timestamp | 创建时间 | 是 |
表4.3 家长表
序号 | 列名 | 数据类型 | 说明 | 允许空 |
1 | jiazhang | id | int(11) | 否 |
2 | jiazhang | yonghu_id | int(11) | 是 |
3 | jiazhang | username | varchar(200) | 是 |
4 | jiazhang | password | varchar(200) | 是 |
5 | jiazhang | name | varchar(200) | 是 |
6 | jiazhang | phone | varchar(200) | 是 |
7 | jiazhang | id_number | varchar(200) | 是 |
8 | jiazhang | sex_types | int(11) | 是 |
9 | jiazhang | my_photo | varchar(200) | 是 |
10 | jiazhang | create_time | timestamp | 是 |
表4.4 家长交流表
序号 | 列名 | 数据类型 | 说明 | 允许空 |
1 | id | int(11) | 主键 | 否 |
2 | users_id | int(11) | 老师id | 是 |
3 | users_content | varchar(200) | 留言内容 | 是 |
4 | insert_time | timestamp | 留言时间 | 是 |
5 | jiazhang_id | int(11) | 家长id | 是 |
6 | jiazhang_content | varchar(200) | 家长回复 | 是 |
7 | update_time | timestamp | 回复时间 | 是 |
8 | create_time | timestamp | 创建时间 | 是 |
表4.5 请假表
序号 | 列名 | 数据类型 | 说明 | 允许空 |
1 | id | int(11) | 主键 | 否 |
2 | yonghu_id | int(11) | 用户 | 是 |
3 | onday | varchar(200) | 请假开始时间 | 是 |
4 | downday | varchar(200) | 请假结束时间 | 是 |
5 | qingjia_number | int(11) | 请假天数 | 是 |
6 | qingjia_types | int(11) | 请假状态 | 是 |
7 | liyou_content | varchar(200) | 理由 | 是 |
8 | update_time | timestamp | 审批时间 | 是 |
9 | create_time | timestamp | 创建时间 | 是 |
表4.6 实习表
序号 | 列名 | 数据类型 | 说明 | 允许空 |
1 | id | int(11) | 主键 | 否 |
2 | yonghu_id | int(11) | 用户 | 是 |
3 | shixigongsi | varchar(200) | 实习公司 | 是 |
4 | shixi_content | varchar(200) | 实习详情 | 是 |
5 | start_time | timestamp | 实习开始时间 | 是 |
6 | end_time | timestamp | 实习结束时间 | 是 |
7 | create_time | timestamp | 创建时间 | 是 |
5 系统实现
系统实现部分就是将系统分析,系统设计部分的内容通过编码进行功能实现,以一个实际应用系统的形式展示系统分析与系统设计的结果。前面提到的系统分析,系统设计最主要还是进行功能,系统操作逻辑的设计,也包括了存储数据的数据库方面的设计等内容,系统实现就是一个最终的实施阶段,将前面的设计成果进行物理转化,最终出具可以运用于实际的软件系统。
5.1 管理员功能介绍
5.1.1 学生信息管理
如图5.1显示的就是学生信息管理页面,此页面提供给管理员的功能有:添加学生,修改学生,删除学生,通过条件查看学生信息。
图5.1 学生管理页面
5.1.2 请假管理
如图5.2显示的就是请假管理页面,此页面提供给管理员的功能有:查看请假记录,审核请假,删除请假和查看统计功能。
图5.2 请假管理页面
5.1.3 成绩管理
如图5.3显示的就是成绩管理页面,此页面提供给管理员的功能有:添加某一次考试的科目的成绩,删除成绩,修改成绩,查看本次考试各门科目的平均分数。
图5.3 成绩管理页面
5.1.4 住宿管理
如图5.4显示的就是住宿管理页面,此页面提供给管理员的功能有:对学生分配宿舍,修改学生的宿舍,删除宿舍。
图5.4 宿舍管理页面