2022年班管理系统数据库方案和数据流图.docx
个人资料整理仅限学习使用班级治理系统的需求分析1.1 1 功能描述本高校班级治理系统的主要目的是为了便利毕业之后大家保持联系,不会由于彼此分开而使得同学间的感情疏远;因此要为班级成员供应一个温馨,友好的操作界面,让大家进入系统感觉犹如走进家庭般暖和,同时为具有较高权限的系统治理员供应相应的系统功能;高校班级治理系统主要需要实现以下基本功能:1. 登入功能:系统首页供应登入对话框,输入用户名和密码,系统验证正确后进入系统,否就提示错误信息;2. 注册功能:该功能为浏览者供应注册功能,在注册界面填写相应信息, 系统验证正确后,成为系统用户;3. 留言功能:全部用户都具有此功能,它用于用户发表留言;4. 查看留言功能:全部用户都具有此功能,用于查看系统中全部成员留言;5. 删除留言功能:该功能只有系统治理员才能使用,用于删除系统中不需要的留言;6. 个人信息修改功能:全部用户都具有此功能,用于修改用户注册信息;7查看班级信息功能:全部用户都具有此功能,用于查看当前系统信息,如班级创建者,班级说明,班级成员总数,留言总数,相片总数等;8. 修改班级信息功能:该功能只有系统治理员才能使用,用于修改班级信息;9. 上传相片功能:该功能只有系统治理员才能使用,用于将班级照片发布在系统中10. 删除相片功能:该功能只有系统治理员才能使用,用于删除不需要的照片;11. 浏览相片功能:全部用户都具有此功能,用于浏览系统发布的照片;12. 发送短信功能:全部用户都具有此功能,用于在系统中发送短信,你可以指定发送对象;13. 查看短信功能:全部用户都具有此功能,用于查看是否有自己的短信;14. 删除短信功能:该功能只有系统治理员才能使用,用于删除不需要的短信;15. 发布班级新闻功能:该功能只有系统治理员才能使用,用语发布班级重要通知等;16. 修改班级新闻功能:该功能只有系统治理员才能使用,用于修改新闻内容;17. 删除班级新闻功能:该功能只有系统治理员才能使用,用于删除系统中的旧新闻;18. 添加老师功能:该功能只有系统治理员才能使用,用于添加老师信息;19. 查看老师信息功能:全部用户都具有此功能,用于查看老师信息,便利用户与老师取得联系;20. 查看用户信息功能:该功能只有系统治理员才能使用,用于查看注册的全部用户信息;21. 用户权限设置功能:该功能只有系统治理员才能使用,用于设置用户权限,是否将用户提升为治理员,或者将治理员降为一般用户;1.2 系统结构图 流程图>依据需求分析描述,班级治理系统大体上可以分为7 个模块:用户登入模块、用户治理模块、留言治理模块、信息治理模块、新闻治理模块、短消息治理 模块和相册治理模块;如图 2 所示;图 2 系统结构图个人资料整理仅限学习使用2 系统设计2.1 各模块设计2.1.1 登录模块设计用户身份验证;用户进入系统,第一需要进行身份验证;假如通过了身份验证,就为合法用户,同时其帐号和权限等资料将会储存在Session对象, Session对象储存的信息是局部的,随用户不同而不同的;当用户拜访系统的各 个子系统时,系统自动从 Session 对象中猎取用户的资料,而无须将用户的资料作为恳求方法、参数名、参数值追加到URL中;这样可以防止用户恶意修改URL 中 的 值 非 法 访 问 ; Session对 象 中 的 变 量 设 置 :SessionUser_ID用 户名,Sessionsign用户权限;模块设计流程如下列图;用户登录过程是必需的,由于只有这样才能从数据库中得到用户名和权限;.开头用户名或密码错误已注册用户登录未注册返回登陆输入用户名和密码用户注册用户名长度验证用户信息验证用户名长度不合法验证用户信息不合法验证通过验证通过查询数据库把用户图信息3存入登S入ess验ion证流程图添加用户2.1.2 班级信息治理模块设计登陆胜利班级信息治理功能的设计;只有治理员才可以对班级信息进行治理,用户只 能查看班级信息而不能修改,班级宣言限制为200 字以内并不能为空,系统将判定新班级宣言是否为空或超过200 字,假如数据为空或超过 200 字就提示错误, 返回班级信息治理页面,班级名称、创建人、入学年份同上;否就,班级信息修改胜利,班级信息仍包括了对新闻、留言、相片和成员总数和最新更新的动态统计;此模块的设计流程如下列图;开头数据库更新完成登陆治理页面转到班级治理查看班级信息修改班级信息信息不正确验证班级信息信息正确更新数据库数据库更新失败2.1.3 用户治理模块图 4 班级信息修改流程图用户治理功能设计;该功能只有系统治理员才能使用此功能 , 包括四部分: 一是用户查询功能,二是用户权限治理,三是用户删除;用户查询功能:该功能便利使用者查找亲友同学,仍可以统计出目前班级拥有多少成员;此项功能是依据使用者输入的关键字遍历数据库,查找有无匹配的记录;假如记录存在将记录输出到用户浏览端,否就显示“暂无类似用户信息”;用户权限治理功能:该功能便利治理员认命其他用户为治理员,这样不仅能削减自己的工作量,也能更好的保护网站,假如发觉某治理员利用权限进行非法活动时超级治理员可以取消掉该治理员的治理权限;用户删除功能,该功能使治理员能处理那些利用本网站进行非法活动的用户,删除其用户信息;此模块设计流程如下列图;开头登陆治理页面转到用户治理页面查看用户锁定、解锁;提升、返回结果数据库更新取消治理权限删除用户验证操作权限验证通过验证未通过2.1.4 新闻治理模块图 5 用户治理流程图新闻治理功能;该功能只用系统治理员才能使用, 包括三部分,一是发布新闻,二是修改新闻,三是删除新闻;发布新闻功能 : 该功能的实现是从新闻添加页面猎取到新闻表单信息,然后调用相应方法进行处理,最终更新至数据库;修改新闻功能 : 该功能的实现是先猎取该新闻编号,然后使用SQL 语言遍历数据库中有无该新闻记录,假如记录存在,将记录信息放入新闻对象实体内,治理员在 JSP 页面猎取新闻信息,再进行修改,其后操作类似添加新闻;新闻删除功能 : 该功能的实现需要使用SQL 语言遍历数据库中有无新闻记录,假如记录存在,就把记录信息放入新闻对象实体,治理员可在页面查看记录并批量删除;模块设计流程如下列图;开头登陆治理页面转到新闻治理页面查看新闻添加、修改和删除返回结果验证操作权限数据库更新验证通过图 6 新闻治理流程图2.1.5 相册治理模块班级相册治理功能设计;作为班级网站应当有上传相片的才能,班级相册治理功能的设计正是为班级治理员设置的治理功能之一;其中包括二部分,一是上传相片,二是删除相片;1> 上传相片功能:该功能便利治理员批量上传班级活动的相关照片,治理员先挑选好要上传的照片,点击上传后,通过JSP页面处理生成缩放的新图,然后把原图和新图放入服务器端的上传文件夹中,然后把照片信息存入数据库,上传完 成;2> 删除相片功能:该功能的实现需要使用SQL 语言遍历数据库中有无相片记录,假如记录存在,就把记录信息放入相片对象实体,治理员在页面查看记录并 删除;模块设计流程如下列图;图 7 相册治理流程图2.1.6 留言治理模块班级留言治理功能设计;作为班级网站应当具备的才能,班级留言治理功能的设计正是为班级治理员设置的治理功能之一;其中包括二部分,一是发表、查看留言,二是删除留言;发表、查看留言功能:该功能是作为网站成员之间沟通信息的重要载体,用户可以在留言页面发表留言,用户假如没有登陆网站,就默认为“游客”身份,只能使用该名发表留言,不能使用其它用户名进行留言,登陆网站后就用户可直接发表留言,但只能使用自己的用户名进行发表;删除留言功能:该功能的实现需要使用SQL 语言遍历数据库中有无留言记录,假如记录存在,就把记录信息放入相片对象实体,治理员可在治理页面 查看记录并批量删除;模块设计流程如下列图;图 8 留言治理流程图2.1.7 短消息治理模块短消息治理功能设计;包括三部分,一是发送短消息,二是查看短消息,三是删除短消息;发送短消息功能:该功能是作为网站成员之间沟通信息的另一重要载体,用户可以在短消息页面发送短消息,用户假如没有登陆网站,就不能拜访短消息页面,因而无法发送短消息,登陆网站后用户可向其他用户发送短消息, 收件人必需是数据库内现有的用户名;查看短消息功能:该功能的实现需要先查看短消息列表,点击其中一个短消息标题即可查看具体内容;删除短消息功能:该功能的实现需要使用SQL语言遍历数据库中有无该用户短消息记录,假如记录存在,就把记录信息放入短消息对象实体,用户可在 短消息治理页面查看记录并批量删除;模块设计流程如下列图;开头转到短消息页面查看短消息发送、查看和删除验证未通过登陆主页返回结果验证操作权限数据库更新验证通过图 9 短消息治理流程图2.3数据库设计4.2.1系统数据流分析依据上面的模块功能分析与设计可知,有关数据操作的对象有2 个,实体有7 个;两个对象分别为用户和治理员, 7 个实体分别为用户信息表、短消息信息表、班级信息表、班级新闻信息表、班级留言信息表、班级相册信息表和老师信 息表;系统总体数据流如下列图;图 10 系统数据流图2.2.2 实体 E-R图系统数据库设计是系统功能实现的基础;制作数据库表第一要确定实体的属性和实体间的关系;数据库要储备的班级信息、短消息信息、新闻信息、相片信息、留言信息、老师信息和用户信息,这些信息是班级、短消息、新闻、相片、留言、老师和用户的属性;图 11 用户 E-R 图图 12 班级信息 E-R 图图 13 短消息 E-R 图图 14 老师 E-R 图图 15 留言 E-R 图图 16 相册 E-R 图图 17 新闻 E-R 图2.2.3 实体关系 E-R 图一个用户可以发表如干的留言,一个留言只能属于一个用户;一个用户可以有如干的短消息,一个短消息只能属于一个用户;一个治理员可以治理如干的用户,一个用户可以被如干的治理员所治理;一个治理员可以治理如干的新闻,一个新闻可以被如干的治理员所治理;一个治理员可以治理如干的相片,一个相片可以被如干的治理员所治理;一个治理员可以治理如干的老师信息,一个老师信息可以被如干的治理员所治理;实体间关系如下列图;短消息N发送1用户1N治理治理MN治理1M治理治理员MM新闻N班级信息NN发表MNN治理留言M治理N治理相片老师通讯录图 18 实体关系 E-R 图2.2.4 数据库主要表结构说明用户信息表 帐号, 密码, 真实姓名 , 性别, 生日, 权限, 是否锁定 ,Email, 个人主页, 注册时间 , 联系电话 , 手机号码 , 通讯地址 ,QQ,自我介绍 , 所属班级 班级信息表 班级编号 , 班级名称 , 创建日期 , 班级人数 老师信息表 老师编号 , 老师姓名 , 所属学院 ,Email,办公地点 , 手机号码 , 联系电话, 通讯地址 短消息信息表 消息编号 , 发送者账号 , 接收者账号 , 标题, 内容, 发送时间 , 是否阅读班级新闻信息表 新闻编号 , 标题, 内容, 发布时间 班级相册信息表 图片编号 , 所属班级 , 图片名称 , 储备路径 , 图片介绍 班级留言信息表 留言编号 , 留言者账号 , 所属班级 , 留言内容 , 留言时间 、用户信息表 members>记录全部的用户信息;在此表中,每一条记录都是一个用户,其中User_ID是用户名,并且含有相对应的信息,在表中作为唯独标识;表 1 用户信息表 members序号字段名称字段含义类型宽度是否为空备注1User_ID用户名varchar16NOPrimarykey2Password密码Varchar16NO3Sex性别Varchar2NO4Realname真实姓名Varchar16YES5Birthday诞生日IntYES从 01 至 316Birthmonth诞生月IntYES从 01 至 127Email电子邮箱地址Varchar40NO8AddTime注册时间Varchar50NO9Mobile手机号码Varchar15YES10Phone家庭电话Varchar15YES11Address家庭住址Varchar40YES12Introduction自我介绍Varchar500YES13Locked锁定用户EnumNO14QQQQInt10YES2、留言信息表 word>留言信息表记录了用户在班级中的留言信息,“Word_ID”为主键;表 2 班级留言信息表 word序号字段名称字段含义类型宽度是否为空备注1Word_ID留言编号Int10NOPrimary key2User_ID留言者编号Varchar16NOForeign key3Time留言时间TimestampNO4Content留言内容Varchar500NO3、老师信息表 communicate>包含了老师通讯信息,其中Teacher_ID “老师编号”是系统安排的唯独标识,在整个老师通讯录表储备的数据里是互不相同的;表 3 老师通讯录表 communicate序号字段名称字段含义类型宽度是否为空备注1Teacher_ID老师编号Int4NOPrimary key2Realname老师姓名Varchar16NO3Academic所在学院Varchar16NO4Email电子邮箱Varchar40YES5Office办公地址Varchar40YES6Mobile手机号码Varchar15YES7Phone联系电话Varchar15YES8Address家庭住址Varchar40YES4、短消息信息表 <messages)是用户治理短消息和治理员给用户发送系统消息用的表,每一条记录代表一封邮件;其中 id “邮件编号”是系统为邮件安排的唯独标识符,是此表的唯独标识;表 4 短消息表 messages宽度4是否为空NO备注Primarykey16NO16NO50NO2000NO4NO50NO序号字段含义类型1Id惟一编号Numeric2Sender发件人Varchar3Incept收件人Varchar4Title主题Varchar5Content内容Varchar6Flag邮件标志int7Sendtime发送时间Varchar5、新闻信息表 notes>记录系统的新闻信息; Note_ID “新闻编号”是系统为其安排的唯独标识;表 5 班级新闻表notes序号字段名称字段含义类型宽度是否为空备注1Note_ID新闻编号Int4NOPrimary key2Body新闻内容Varchar1000NO3Addtime发布时间Varchar50NO4Title新闻标题Varchar50NO6 、相册信息表 up_imges>记录相册信息; ID相片编号是系统为其安排的唯独标识;表 6 相册信息表 up_imges序号字段名称字段含义类型宽度是否为空备注1ID相片编号int4NOPrimary key2times上传时间Varchar503Path相片位置Varchar60NO4ip上传者 IPVarchar1007 、班级信息表 classes>记录班级信息; Class_ID “班级编号”是系统为其安排的唯独标识;它在整个班级信息表储备的数据里是互不相同的,而且在系统的很多其它表里也要用到它;表 7 班级信息表 classes序号字段名称字段含义类型宽度是否为空备注1Class_ID班级编号Int4NOPrimary key2Classname班级名称Varchar16NO3Classmaker创建者Varchar16NOForeign key4Registtime创建时间TimestampNO5Number成员人数Int46Classtop班级宣言Varchar200YES杨庆波2021-12-18