基于jsp辽工大软件学院公寓管理系统的设计与实现_第1页
基于jsp辽工大软件学院公寓管理系统的设计与实现_第2页
基于jsp辽工大软件学院公寓管理系统的设计与实现_第3页
基于jsp辽工大软件学院公寓管理系统的设计与实现_第4页
基于jsp辽工大软件学院公寓管理系统的设计与实现_第5页
已阅读5页,还剩80页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中文题目:基于 JSP 辽工大软件学院公寓管理系统的设计与实现 外文题目:THE DESIGN AND IMPLEMENTATION OF FLAT MANAGEMENT SYSTEM FOR THE SCHOOL OF SOFTWARE OF LGD 毕业设计(论文)共 77 页 (其中:外文文献及译文 6 页) 完成日期 2015 年 6 月 答辩日期 2015 年 6 月 I 摘摘 要要 学生公寓是每一位在校学生生活、学习、相互交流的主要场所,如何提供一个良好 的学生公寓的管理体系,对学校和同学而言至关重要。以往的学生公寓管理基本上还处 于人工操作的阶段,随着计算机技术和网络技术的日益广泛应用,采用计算机以及网络 来管理学生公寓,有着很好的前景。研究公寓管理系统以期发展高校公寓管理系统信息 化,实现一个更加适合学生使用的在线系统非常有意义。 学生公寓管理系统基于 B/S 模式开发,使用 JSP 动态网页制作技术作为主要的前台 开发语言,实现前后台的数据交互;后台选用 My SQL 作为数据库服务器。该学生公寓 管理系统主要划分了管理员、学生和教师三种权限,实现的功能有学生信息的管理,宿 舍信息的管理,宿舍的分配功能,活动发布管理,宿舍检查信息录入功能等。系统具有 界面友好,操作简便的特性。 关键词:B/S;MY SQL 数据库;公寓管理 II ABSTRACT Student apartment is the main place where each and every student in the school life, learning, communication, how to provide a good student apartment management system, is critical for schools and students. The student apartment management basically is still in the stage of manual operation, with the wide application of computer technology and network technology, the use of computers and networks to manage the student apartment, with good prospects. The apartment management system in order to develop the college dormitory management information system, to achieve a more suitable for students to use the online system is very meaningful. Based on the B/S pattern of development of student apartment management system, using JSP dynamic Webpage production technology as the main language development prospects, QianHouTai realize the data interaction; background use My SQL as the database server. The student housing management system is divided into the administrator, teachers and students of three rights, realize the function of a student information management, information management of dormitory, dormitory distribution function, activities of publishing management, dormitory inspection information input function etc The system has friendly interface, convenient operation characteristics. Key words: B/S; My SQL Server database; Apartment management 目录 1 项目概述 .1 1.1 选题背景及目的 .1 1.2 学生公寓管理系统的研究现状 .1 1.3 公寓组织机构 .2 2 系统需求分析 .3 2.1 需求陈述3 2.2 Use Case 建模.3 2.2.1 定义参与者 .3 2.2.2 Use Case 图.4 3 总体设计 .9 3.1 系统结构9 3.2 软件架构.10 3.2.1 架构设计目标 10 3.2.2 软件架构设计 11 3.2.3 软件架构类图 15 3.2.4 数据库设计 15 4 详细设计 17 4.1 系统交互图 17 4.1.1 系统架构类交互图.17 4.1.2 系统状态图 20 4.1.3 系统活动图 21 4.2 业务逻辑对象类设计 22 4.2.1 发现业务逻辑类.22 4.2.2 业务逻辑对象类图.23 4.3 数据库设计 24 4.3.1 ER 图概念模型设计25 4.3.2 关系模式设计 28 4.3.3 物理表结构图 28 4.4 开发环境的选择 31 4.4.1 系统开发工具.31 4.4.2 数据库的选择.31 4.4.3 系统网络架构设计 32 5 编码.34 5.1 开发核心技术概述 34 5.1.1 Macromedia Dreamweaver 简介34 5.1.2 JSP 简介.34 5.1.3 Tomcat 概述35 5.1.4 数据库 My SQL36 5.1.5 Java Servlet 和 JSP 37 5.2 系统代码举例 39 6 测试 41 6.1 测试原则及测试方法概述 41 6.2 测试用例 44 结 论 .47 致 谢 .48 附录一 中文翻译 .50 附录二 英文原文 .53 附录三 源程序代码 .57 辽宁工程技术大学毕业设计(论文) 1 1 项目概述 1.1 选题背景及目的 公寓管理系统是一个提供给高校制定公寓管理的平台,可以满足现代化的校园公寓 管理要求。目前在很多高校之中,都基本拥有了自己的公寓管理系统,当今使用的公寓 管理系统大多是基于 ASP 或者 JSP 等技术,并利用计算机访问网络进行信息处理。公寓 管理系统是针对校园公寓使用,从学生的角度来说,期望使用公寓管理系统查询自己公 寓活动通知,公寓检查结果等日常所需信息。从班主任老师角度来说,也期望通过系统 对自己管理的班级进行基本信息查看,宿舍管理分配,查看公寓检查结果和自己班级的 卫生优良率。从管理员的角度同样需要一个管理系统用户对学生信息,教师信息,宿舍 信息,宿舍分配等进行管理。 开发辽工大软件学院公寓管理系统的目标就是立足于学院应用实际,着眼于未来发 展,以强化学院公寓管理,提高公寓管理效率,方便学生、教师和管理员的日常生活, 同时精简学院大学生自律委员会各部门的工作,设计一个符合学院公寓管理功能规范要 求的公寓管理系统平台。该系统必将进一步促进学生公寓管理的便捷化;管理员和学生 干部工作精简化。软件学院公寓管理系统主要针对公寓管理业务展开的,学院公寓管理 系统的应用,可以极大的避免学生因忽略宣传栏通知而造成的信息疏漏,从而避免学院 学生干部需要延长活动宣传周期,也避免了宣传结束后,需要为没有看到通知的学生进 行额外处理,该系统的应用精简了系统管理员的工作周期,使得其工作更加高效,统计 结构更加准确,对于整个公寓管理过程有着举足轻重的地位。 1.2 学生公寓管理系统的研究现状 学生公寓的管理一直受到社会各界的关注。校方为了给学生提供最好的环境而绞尽 了脑汁:家长为了自己的子女在学生生活好,不断提出新的要求。安全、舒适、和谐的 住宿环境是公寓管理追求的目标。传统的学生公寓的管理就是人工分配房间,宣传栏发 布公寓活动通知、公寓检查通知和检查结果通知。这样的模式自从有了住宿制就一直延 续到现在。 自从有了计算机,一些学校将房间分配、宿舍检查结果等通过计算机管理,形成了 简单的计算机管理。这种模式也只是把以前的纸质材料数字化,也许查找一个学生比以 前花的时间短了,分配房间没以前那么费事了,能做一些简单的统计工作。这种所谓的 孙旭:基于 JSP 的辽工大软件学院公寓管理系统的设计与实现 2 管理系统只是公寓管理的部分功能数字化,许多事情还是延用以前的方法。并不能做到 高效和全面。 现在互联网技术已经得到飞速发展,所以学生公寓管理系统与互联网技术结合成为 一个研究开发热点问题。基于此我们提出了基于 Java web 的学生公寓管理系统。 1.3 公寓组织机构 辽宁工程技术大学在辽宁省葫芦岛市,建校 60 余年,现有 21 个院,113 个本科与高 职专业,全日制在校博士研究生,硕士研究生,本科生,高职生,和留学生 3 万余人。 辽宁工程技术大学公寓管理的组织机构包括: (1) 管理员教师 (2) 大学生自律委员会学生干部 (3) 普通学生 (4) 辅导员教师 公寓组织结构如下图 1-1 所示。 图 1-1 公寓管理组织结构图 剖析现有的学生公寓管理系统,没有真正做管理自动化,只是把可归纳的问题集中了, 缺少了互动,系统也不能主动发现问题,并反馈到相关的管理人员及有关领导。 辽宁工程技术大学公寓管理组 织结构 学生处校大学生自律委员会 宿 舍 管 理 处 各学 院学 生工 作部 各学院 大学生 自律委 员会 辽宁工程技术大学毕业设计(论文) 3 Figure 1-1 apartment manage organization chart 2 系统需求分析 软件需求分析(Software Reguirement Analysis)是研究用户需求得到的东西,完全理 解用户对软件需求的完整功能,确认用户软件功能需求,建立可确认的、可验证的一个 基本依据。软件需求分析工作也是一个不断认识和逐步细化的过程。该过程将软件调研 阶段的需求资料进行分析和设计,使软件范围逐步细化到详细定义的程度,并分析出各 种不同的软件元素,然后为这些元素找到可行的解决办法。本章将从不同角度的需求分 析问题,讲述软件需求陈述,系统功能建模,并给出了用例图。 2.1 需求陈述 需求分析的基本任务是准确的回答“系统必须做什么?”这个问题,是对目标系统 提出完整、准确、清晰、具体的要求,是确定系统所需的功能和任务目标。需求分析阶 段应包括 UseCase 建模,它们是用来描述参与者在系统中行为信息而产生的用例。因此, 它们有助于系统分析员与系统设计人员之间的通信。 开发学生公寓管理系统的目的主要是通过互联网实现学生在线获取学院发布的活动 信息、每周检查宿舍的结果;实现管理员和各行政班级导员对宿舍分配的处理,对学生、 宿舍、教师、班级等基本信息的管理。实现对公寓管理的网络化。 开发学生公寓管理系统的目标是: 1.确保该系统的稳定性,保证数据的安全,满足学院公寓管理人员、辅导员老师和学 生的需要。 2.管理员能够登录,方便地进行数据管理。 3.保证某些处理的及时性,如学生干部及时上传宿舍检查结果和公寓文化活动信息等。 4.提供简单、便捷的操作。 孙旭:基于 JSP 的辽工大软件学院公寓管理系统的设计与实现 4 2.2 Use Case 建模 2.2.1 定义参与者 参与者(actor)是指系统以外的、需要使用系统或与系统交互的东西,包括人、设备、 外部系统等。3根据学生公寓管理系统的需求可以确定 4 个参与者,即: 系统管理员使用公寓管理系统来维护系统基本信息。包括学生信息管理、宿舍信息 管理、教师信息管理、班级信息管理、宿舍分配管理。 学生干部使用学生公寓管理系统对宿舍信息进行查看、对班级信息进行查看、管理 公寓检查信息、管理公寓活动通知。 辅导员老师使用学生公寓管理系统查看自己负责的班级信息和为自己负责班级分配 的宿舍信息并为自己班级的学生分配宿舍,查看自己管理班级每周的公寓检查结果。 学生用户使用学生公寓管理系统查看个人信息和班级信息以及宿舍检查信息。同样 学生可以在学生公寓管理系统前台查询学院发布的公寓活动通知。 2.2.2 Use Case 图 用例图定义:由参与者(Actor) 、用例(Use Case)以及它们之间的关系构成的用于 描述系统功能的动态视图称为用例图。用例图(User Case)是被称为参与者的外部用户 所能观察到的系统功能的模型图,呈现了一些参与者和一些用例,以及它们之间的关系, 主要用于对系统、子系统或类的功能行为进行建模。用例图展示了用例之间以及同用例 参与者之间是怎样相互联系的。用例图用于对系统、子系统或类的行为进行可视化,使 用户能够理解如何使用这些元素,并使开发者能够实现这些元素。用例图的图示见表 2- 1。 表 2-1 用例图图例 Tab 2-10 the Legend of UseCase Diagram 符号名称说明 用例用例交互动作的序列说明 辽宁工程技术大学毕业设计(论文) 5 参与者 参与者除系统外需要与系统交互的事物 关联actor 和 usecase 之间的关系 根据系统需求分析,并结合上节系统活动者的定义分析,得到学生公寓管理系统后 台管理模块的 5 个用例如下:学生信息管理、班级信息管理、教师信息管理、宿舍信息 管理和宿舍分配处理。 结合参与者和用例得到学生公寓管理系统后台管理模块的用例图如图 3-1 所示。 1.基本信息管理 基本信息管理包括学生信息管理、班级信息管理、教师信息管理、宿舍信息管理, 这四个用例主要实现信息的添加、删除功能。 孙旭:基于 JSP 的辽工大软件学院公寓管理系统的设计与实现 6 管理员 学生信息管理 班级信息管理 教师信息管理 宿舍信息管理 分配宿舍 添加学生信息 删除学生信息 添加班级信息 删除班级信息 添加教师信息 删除教师信息 添加宿舍信息 删除宿舍信息 图 2-2 学生公寓管理系统管理模块 Use Case 图 Fig2-2 Use Case for the part of manager use module 2.宿舍分配 主要包括一键为各个班级分配宿舍信息。 根据系统需求分析,并结合上节系统活动者的定义分析,得到学生公寓管理系统学 生干部管理模块的 4 个用例如下:宿舍信息查看、班级信息查看、公寓检查信息管理、 公寓活动通知管理。结合参与者和用例得到学生公寓管理系统学生干部管理模块的用例 图如图 2-3 所示。 根据系统需求分析,并结合上节系统活动者的定义分析,得到学生公寓管理系统教 师使用模块的 3 个用例如下:宿舍信息查看、班级信息查看、查看公寓检查信息。结合 参与者和用例得到学生公寓管理系统辅导员模块的用例图如图 3-3 所示。 辽宁工程技术大学毕业设计(论文) 7 学生干部 宿舍信息查看 班级信息查看 公寓检查信息管理 公寓活动通知管理 查看班级基本信息 查看班级优良率 添加检查信息 删除检查信息 添加活动通知 删除活动通知 图 2-3 学生公寓管理系统 Use Case 图 Fig2-3 Use Case for the part of student manager use module 辅导员 宿舍信息查看 班级信息查看 查看公寓检查信息 查看班级学生信息 为学生分配宿舍 查看班级基本信息 查看各宿舍成绩 孙旭:基于 JSP 的辽工大软件学院公寓管理系统的设计与实现 8 图 2-4 学生公寓管理教师模块系统 Use Case 图 Fig2-4 Use Case for the part of teacher use module 根据系统需求分析,并结合上节系统活动者的定义分析,得到学生公寓管理系统学 生模块的 3 个用例如下:个人信息查看、班级信息查看、查看公寓检查信息。结合参与 者和用例得到学生公寓管理系统学生模块的用例图如图 2-14 所示。 学生 个人信息查看 班级信息查看 查看公寓检查信息 图 2-5 学生公寓管理学生模块系统 Use Case 图 Fig2-5 Use Case for the part of studentuse module 辽宁工程技术大学毕业设计(论文) 9 3 总体设计 需求分析阶段已经完全弄清楚了目标系统的各种需求,较好地解决了要让所开发 的软件“做什么”的问题下一步就要着手实现软件的需求,即要着手解决“怎么做”的 问题。总体设计过程首先寻找实现系统的各种不同的方案,需求分析阶段得到的用例图 是各种方案的基础。本章将从系统结构设计、软件架构设计和数据库设计着手,对公寓 管理系统进行总体设计。 3.1 系统结构 根据需求分析阶段得到的软件功能描述,抽象出学生公寓管理系统的总体系统结构 如图 4-1.1 所示。下面模块划分只是抽象意义上的划分,各模块之间需要共享数据,相互 协作,完成整个系统流程,单一事物功能模块间是相互独立的。公寓管理系统的详细结 构图如图 4-1.2 所示 辽工大软件学院公寓管理系统 客户端管理端 普 通 学 生 用 户 学 生 干 部 用 户 教 师 用 户 系 统 管 理 员 图 3-1 学生公寓管理系统总体结构图 Fig 3-1 Function Models ofthe apartment of student manage system 孙旭:基于 JSP 的辽工大软件学院公寓管理系统的设计与实现 10 宿 舍 信 息 管 理 学 生 信 息 管 理 班 级 信 息 管 理 教 师 信 息 管 理 检 查 信 息 管 理 活 动 通 知 管 理 查 看 班 级 信 息 查 看 学 生 信 息 宿 舍 分 配 处 理 查 看 班 级 信 息 查 看 宿 舍 信 息 系统管理员 学生干部用户教师用户 分 配 宿 舍 查 看 检 查 结 果 普 通 学 生 用 户 基本信息查看 查看宿舍检查结果 图 3-2 学生公寓管理系统详细结构图 Fig 3-2 Function Models of the apartment of student manage system 3.2 软件架构 软件的架构是指通过某种特定的技术平台,完成软件系统整体功能的开发过程。也 可以通俗地理解为:总体设计和总体结构布局。 一般而言,软件系统架构有两个要素: 1.它是一个软件系统从整体到部分的最高层次的划分。 2.建造一个系统所做出的最高层次的、以后难以更改的、商业和技术的决定。 3.2.1 架构设计目标 软件架构设计要达到如下的目标: 可行性(Feasible):架构具有可行性是架构设计的基石。 可靠性(Reliable):软件系统对于用户的商业经营和管理来说极为重要,因此软件 系统必须非常可靠。 安全行(Secure):软件系统所承担的交易的商业价值极高,系统的安全性非常重要。 辽宁工程技术大学毕业设计(论文) 11 可定制化(Customizable):同样的一套软件,可以根据客户群的不同和市场需求的 变化进行调整。 可扩展性(Extensible):在新技术出现的时候,一个软件系统应当允许导入新技术, 从而对现有系统进行功能和性能的扩展。 可维护性(Maintainable):软件系统的维护包括两方面,一是排除现有的错误,二 是将新的软件需求反映到现有系统中去。一个易于维护的系统可以有效地降低技术支持 的花费。 可升级性(Scalable):软件必须能够在用户的使用率、用户的数目增加很快的情况 下,保持合理的性能。只有这样,才能适应用户的市场扩展得可能性。 客户体验(Customer Experience):软件系统必须易于使用。软件的最终用户很可能 是不具有计算机专业技术的人员。 3.2.2 软件架构设计 以下将根据架构设计原则和信息系统原理来建立系统的架构设计模型。将信息系统 中比较关心的对象分层,可分为三层:用户界面层、业务逻辑层、数据访问层,如图4-2 所示,再把各层中的一些公共部分提出来得到包图如图4-3所示: 图 3-3 系统体系架构图 Fig3-3The Diagram of System Architecture 孙旭:基于 JSP 的辽工大软件学院公寓管理系统的设计与实现 12 图 3-4 学生公寓管理系统包图 Fig3-4Package Diagram of the apartment of student manage system 1.转换编码包 转换编码包的职责是: 1)当客户端和后台服务端产生信息交互时,HTTP请求协议需要转换为十六进制编码。 2)对于传出的数据进行编码处理。 3)对于接收到的数据进行解码处理。 转换编码包图展开如图4-4所示: c co on nv ve er rt te er r(转转 换换编编码码) 传出的数据进行编码处理 接收的数据进行解码处理 图 3-5 转换编码包展开图 Fig3-5Package Diagram of Converter 转换编码包包含的类如图 3-6 所示: +编码() +解码() -十六进制编码 编编码码类类 图 3-6 转换编码类图 Fig3-6Class Diagram of Converter 2.业务逻辑包 业务逻辑包的职责是: 辽宁工程技术大学毕业设计(论文) 13 1)接收用户界面层传来的数据; 2)根据用户界面的数据定义SQL命令; 3)实现业务逻辑的算法; 4)拼装数据访问层提供的方法形成完整业务; 5)传递业务执行命令给数据访问层业务逻辑实现持久化操作。 包图展开如图 4-6 所示,业务逻辑包包含的类见图 4-7: S Se er rv vi ic ce e(业业 务务逻逻辑辑包包) 接收用户界面层传来的数据 根据用户界面的数据定义SQL命令 实现业务逻辑的算法 拼装数据访问层提供的方法形成完整业务 传递业务执行命令给数据访问层业务逻辑实现持久化操作 图 3-7 业务逻辑包图展开 Fig3-7Package Diagram of Logic +处理业务() +处理异常() 业业务务逻逻辑辑类类 -业务处理对象 -业务异常对象 -业务对象 +创建方法() +进入界面方法() +手势操作() +初始View() +创建对话框() +显示信息() 主主逻逻辑辑类类 图 3-8 业务逻辑类图 Fig3-8 Class Diagram of Logic 3.数据访问包 数据访问层的职责是: 1)实现数据持久化操作; 2) 执行事务处理,维持事务原子性。 数据访问包图展开如图 4-8 所示: D Da ao o( (数数据据访访 问问包包) ) 实现数据持久化操作 执行事务处理,维持事务原子性 图 3-9 数据访问包图展开 Fig3-9 Package Diagram of Data Access 孙旭:基于 JSP 的辽工大软件学院公寓管理系统的设计与实现 14 数据访问包包含的类见图 3-10 对于每一个业务处理中需要持久化操作的对象都可以对应为一个数据库访问对象, 在很多业务处理中需要请求多个数据库访问对象来进行数据的读写操作,而这些操作又 必须在同一个事务中,这时需要用同一个数据库连接对象来进行统一的事务处理。 +增加记录() +删除记录() +更改记录() +查询记录() #数据库连接对象 数据库访问类 +开始事务() +提交事务() +回滚事务() 数据库连接类 图 3-10 据访问类图 Fig3-10Class Diagram of Data Access 对于每一个业务处理中需要持久化操作的对象都可以对应为一个数据库访问对象, 在很多业务处理中需要请求多个数据库访问对象来进行数据的读写操作,而这些操作又 必须在同一个事务中,这时需要用同一个数据库连接对象来进行统一的事务处理。这里 的数据库连接类的创建用到了单件模式,保证一个类仅有一个实例,一个客户在同一时 刻只能用一个数据库连接对象。 4.实体包 实体包的主要职责是: 1)提供数据封装的对象; 2)提供数据封装对象获取和设置值的方法。 模型包图展开如图4-10所示: O Or rm m( (实实体体 包包) ) 1)提供数据封装的对象; 2)提供数据封装对象获取 和设置值的方法。 图 3-11 型包图展开 Fig3-11ackage Diagram of Model 模型包包含的类见图 3-12 #属性存取操作() -数据字段 Model实体类 +枚举值转名() +枚举名转值() +枚举字段 用用户户自自定定义义枚枚举举类类 辽宁工程技术大学毕业设计(论文) 15 图 3-12 型实体类图 Fig3-12Class Diagram of Model 3.2.3 软件架构类图 将包图展开,得到类图,它是架构的静态结构图,表达了各个类之间的静态联系。 航班查询系统架构类图如下图3-29所示。 +编码() +解码() 编编码码类类 -十六进制编码 +Form() +控件常见方法() S Sy ys st te em m. .W Wi in nd do ow ws s. .F Fo or rm ms s. .F Fo or rm m -控制属性 -控件事件 #事件处理方法() +输入输出方法() +数据封装方法() +数据校验方法() +用户自定义方法() 用用户户窗窗体体类类 +事务标志 -窗体传值字段 +自定义字段 +处理业务() +处理异常() 业业务务逻逻辑辑类类 -业务处理对象 -业务异常对象 -业务对象 常常量量类类 -常量 +请求发送方法() 协协议议发发送送类类 +创建方法() +进入界面方法() +手势操作() +初始View() +创建对话框() +显示信息() 主主逻逻辑辑类类 +添加数据() +获得数据() +更新数据() +删除数据() 数数据据访访问问类类 -数据库连接对象 -结果集 +获取连接() +断开连接() 数数据据库库连连接接类类 +构造方法() +生成对话框() 对对话话框框类类 -对话框类别 +构造方法() +生成时间对话框() 时时间间对对话话框框类类 +构造方法() +生成退出对话框() 退退出出对对话话框框类类 +初始化() +接收服务() +发送服务() 服服务务类类 -服务类型 +初始化() +发送服务请求() +接收服务() 前前台台服服务务类类 +初始化() +得到服务请求() +返回服务() 后后台台服服务务类类 图 3-13 统架构类图 Fig 3-13Class Diagram of System Architecture 3.2.4 数据库设计 数据库在一个信息系统中占有非常重要的地位,数据库结构设计的好坏将直接对应 系统的效率以及实现的效果产生的影响。合理的数据库结构设计可以提高数据存储的效 孙旭:基于 JSP 的辽工大软件学院公寓管理系统的设计与实现 16 率,保证数据的完整性和一致性。同时合理的数据库结构也将有利于程序的实现。数据 库设计总要包括:需求分析,概念结构设计,逻辑结构设计,物理结构设计,数据库实 施,数据库的运行和维护。如果设计的不合理、不完善,将在系统开发过程中,甚至到 后期的系统维护、功能变更和功能扩充时,引起较多问题,严重时甚至要重新设计,重 做大量已完成工作。 辽宁工程技术大学毕业设计(论文) 17 4 详细设计 4.1 系统交互图 4.1.1 系统架构类交互图 交互图用来说明系统如何实现一个用例或用例中的一个特殊场景。UML 提供两类 交互图:时序图和协作图5。时序图按时间顺序描述系统元素之间的交互;协作图则按照 时间和空间顺序来描述系统元素之间的交互。 (1)学生登录工作流程 学生(活动者)首先进行登录,登录成功继续操作,失败请重新登录。 学生登陆界面在接收了学生的输入请求后,向 loginService 对象发送处理请求和 数据。 loginService 对象接收到数据进行业务处理。对于业务处理中的数据持久化操作, 通过访问数据库访问对象进行操作。最后返回处理结果信息结合 Web.xml 配置文件返回 系统主界面,如下图 4-1 与图 4-2 所示。 登录界面登登陆陆界界面面学学生生DBloginSevice主主界界面面 1:输入登录信息 2:提交请求数据 3:doPstm() 4:conn 5:forward(req, res) 图 4-1 学生登陆时序图 Figure 4-1Login sequence diagram 孙旭:基于 JSP 的辽工大软件学院公寓管理系统的设计与实现 18 登录界面登登陆陆界界面面学学生生DBloginService主主界界面面 4:conn 1:输入登录信息2:提交请求数据3:doPstm()5:forward(req,resp) 图 4-2 生登录协作图 Figure 4-2Login collaboration diagram (2)管理员管理工作流程 管理员(活动者)进入系统管理页面,可进行学生管理、班级管理、教师管理、宿 舍管理,分配宿舍。 选择进入学生管理界面,可删除辍学或者毕业的学生,可添加新生信息,操作选 择后系统转向并提交给 studentServlet,studentServlet 对象接收数据后,通过 DB 获取连接 数据库进行持久化数据操作,并返回学生管理界面。 进入分配宿舍界面,可查看班级信息,选择自动分配宿舍,可以为班级分配宿舍。 操作选择后系统转向并提交给 dormitoryServlet,dormitoryServlet 对象接收数据后,通过 DB 获取连接数据库进行持久化数据操作,并转到分配的宿舍信息界面。 综上,管理员拥有的对系统的管理工作流程主要分为和上述两种情况,所以,本节 以以上两个例子作为说明。管理员(活动者)进入系统管理页面,可进行班级管理、教师管 理、宿舍管理。管理员的工作时序图协作图和学生管理的相似,故不作详述。 管理员管理学生信息的工作的协作图和时序图如下图 5-3 与图 5-4 所示。 学学生生管管理理页页面面 管管理理员员 adminServlet DB 分分配配宿宿舍舍页页面面 1:选择管理功能界面 2:service() 3:getConnection() 4:conn 5:返回功能界面 :1:选择分配功能界面 2:service() dormitoryServlet 5:返回功能界面 图 4-3 管理员管理协作图 Figure 4-3Admin Manage collaboration diagram 辽宁工程技术大学毕业设计(论文) 19 班班级级管管理理页页面面管管理理员员ServletDB预预约约管管理理页页面面 1:选择管理功能界面 2:service() 3:getConnection() 4:conn 5:返回功能界面 :1:选择分配功能界面 2:service() 3:getConnection() 4:conn 5:返回分配界面 图 4-4 理员管理时序图 Figure 4-4Admin Manage sequence diagram 交互图用来说明系统如何实现一个用例或用例中的一个特殊场景。UML 提供两类交 互图:时序图和协作图。时序图按时间顺序描述系统元素之间的交互;协作图则按照时 间和空间顺序来描述系统元素之间的交互。根据上述的系统管理模块来建立的系统协作 图如下图 4-4 所示: 孙旭:基于 JSP 的辽工大软件学院公寓管理系统的设计与实现 20 用户界面类业务代理类 业务逻辑类 数据访问类权限管理类 处理结果显示 请求业务处理 处理结果显示 业务处理 读取写入 返回数据 请求业务处理类 权限符合 权限不符 图 4-5 系统管理模块协作图 Fig4-5State Diagram for Salesman Making Order 4.1.2 系统状态图 状态图(statc Diagml)用来描述一个特定对象的所有可能状态及其引起状态转移的事件 7。大多数面向对象技术都用状态图表示单个对象在其生命周期中的行为。一个状态图包 括一系列的状态以及状态之间的转移。 功功能能选选择择状状态态 选择管理功能 / 执行分配宿舍功能 宿宿舍舍分分给给各各辅辅导导员员 学生入住 为学生分配宿舍 分配宿舍登录系统 图4-6 咨询状态图 Figure 4-6 consultation statechart diagram 辽宁工程技术大学毕业设计(论文) 21 图 4-6 是学生公寓管理系统中的分配宿舍的状态图。从起点开始,管理员首先登陆 系统,当登陆成功后处于功能选择状态,选择分配宿舍功能,点击分配按钮,此时处于 系统自动为班级分配宿舍状态,辅导员得到宿舍资源后可以为每一个学生分配宿舍,选 中学生后点击分配,此时系统处于等待学生入住状态。这就是一次完整的宿舍分配状态 图。将分配中所有的状态以及出发这个状态的所有动作表示出来。 4.1.3 系统活动图 活动图是UML中用于对系统的动态方面建模的5种图中的一种图。一张活动图从本质 上说是一个流程图,显示从活动到活动的控制流。活动图用于对一个系统的动态方面建 模。当对象在控制流的不同点上从状态到状态移动时,用活动图也可以对该对象的控制 流进行建模。活动图可以单独用来可视化、详述、构造和文档化对象群体的动态特性。 也可以用于对一个操作的控制流建模。交互图强调的是从对象到对象的控制流,而活动 图强调的是从活动到活动的控制流。一个活动是一个状态机中进行的非原子的执行单元。 活动最终导致一些动作,这些动作由可执行的原子计算组成,这些计算会导致系统状态 的改变或一个值的返回。活动图不仅对系统的动态特性建模是重要的,而且对于通过正 向和逆向工程构造可执行的系统也很重要。在活动图中用左右两端是圆弧的长方形表示 活动,用较粗的横线表示活动的分发,用带有箭头的线表示活动处理的先后顺序8。 孙旭:基于 JSP 的辽工大软件学院公寓管理系统的设计与实现 22 分配宿舍活动图 管理员辅导员学生 阶段 分配宿舍 得到待宿舍 信息 查看学生信息 为学生分配床位 专家查看预约自己 的患者 图 4-7 分配宿舍活动图 Figure 4-7allot dormitory activity diagram 图5-9是本系统中分配宿舍活动图。管理员首先登陆系统,当登陆成功后处于功能选 择状态,选择分配宿舍功能,点击分配按钮,此时处于系统自动为班级分配宿舍状态, 辅导员得到宿舍资源后可以为每一个学生分配宿舍,选中学生后点击分配,此时系统处 于等待学生入住状态。 4.2 业务逻辑对象类设计 4.2.1 发现业务逻辑类 类图就是显示出类、接口以及它们静态结构以及关系的图。类的基本元素是类或者 辽宁工程技术大学毕业设计(论文) 23 是接口6。 类图中类的框可分为 类名 属性清单 方法清单 如果一个类有内部成员类,那么它的类图就会有4层。在类图中除了类名称不能省略 必须显示外,其他几层在UML中都可以省略。 第一层是类名。如果类名是正体字,表明类是具体的(即可以实例化的),变量名如果 是斜体的表明类是抽象的。 第二层是属性层。属性名称左边,如果是一把锁,那么表明该属性是私有的,如果 左边是一个斜菱形,那么表明它是公共的。 第三层是方法层。方法左边的符号含义同属性的左边的符号表示的含义相同。方法 下面如果是一条下划线,表明它是静态方法。 在类和类之间,会有连线指明它们之间的关系。类和类,类和接口,接口和接口之 间可以建立一定的关系:一般化关系、关联关系、聚合关系、合成关系和依赖关系。这 几种关系都是静态的。 (1)一般化关系(Generalization)表示类和类之间的继承关系,接口和接口之间的继 承关系,或类对接口的实现关系。一般化的关系是从子类指向父类的,或者从实现接口 的类指向被实现的接口,与继承或者实现的方向相反。 (2)关联(Association)关系表示类和类之间的连结,它使得一个类可以知道 另一个类的属性和方法。关联可以是双向的,也可以是单向的。双向关联可以有两 个箭头或者没有箭头。单向的关联有一个箭头,表示关联的方向。单向的关联更为普遍, 通常不鼓励使用双向箭头。 4.2.2 业务逻辑对象类图 (1)管理员分配宿舍给辅导员 管理员为每个辅导员负责的班级分别分配一定数量宿舍的业务对象类如图 5-6 所示。 孙旭:基于 JSP 的辽工大软件学院公寓管理系统的设计与实现 24 dormitoryServlet +init(ServletConfig) +doGet(req,res) +doPost(req,res) +yuyuezhuanjia(req,res) +yuyue(req,res) DB -con -pstm -user -password -className -url +DB() +getCon() +doPstm() +getRs() +closed() HttpServlet Tdormitory Tclass 图 4-8 班级分配宿舍类图 Figure 4-8 dormitory allot for classes class diagram (2)辅导员分配宿舍给班级学生 辅导员为每个学生分别分配宿舍的业务对象类,如下图 5-7 所示。 dormitoryServlet +init(ServletConfig) +doGet(req,res) +doPost(req,res) +yuyuezhuanjia(req,res) +yuyue(req,res) DB -con -pstm -user -password -className -url +DB() +getCon() +doPstm() +getRs() +closed() HttpServlet Tdormitory Tclass Tstudent 图 4-9 宿舍分配类图 Figure 4-9 dormitory allot class diagram 4.3 数据库设计 数据库在一个信息系统中占有非常重要的地位,数据库结构设计的好坏将直接对应 系统的效率以及实现的效果产生的影响。合理的数据库结构设计可以提高数据存储的效 率,保证数据的完整性和一致性。同时合理的数据库结构也将有利于程序的实现。数据 辽宁工程技术大学毕业设计(论文) 25 库设计总要包括:需求分析,概念结构设计,逻辑结构设计,物理结构设计,数据库实 施,数据库的运行和维护。如果设计的不合理、不完善,将在系统开发过程中,甚至到 后期的系统维护、功能变更和功能扩充时,引起较多问题,严重时甚至要重新设计,重 做大量已完成工作。 4.3.1 ER 图概念模型设计 概念模型用于将系统需求分析得到的用户需求抽象为信息结构过程。概念模型是整 个数据库设计的关键。概念模型最终要转换为数据模型,如下表4-1所示,描述了E-R符 号说明。概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象,是数据 库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户之间进行交流的语 言,因此概念模型一方面具有较强的语义表达能力,能够方便、直接地表达应用中的各 种语义知识,另一方面它简单、清晰、易于用户理解。 表 4-1 E-R 图符号说明 Tablet 4-1 E-R Chart symbols explanation 符号含义符号说明 实体 表示实体集:同型实体的 集合,矩形框内写明实体 名 属性 实体所具有的某一特性, 并用无向边与其相应实体 连接起来 联系 表示联系集,菱形框内写 明联系名,并用无向边与 其有关实体连接。 线段 将属性连接到实体集或将 实体集连接到联系集 通过对本系统分析,抽象出公寓管理系统的实体属性图管理员实体图如图 4-13 所示。 孙旭:基于 JSP 的辽工大软件学院公寓管理系统的设计与实现 26 t_adminuserpwusername useridtype 图 4-13 管理员实体属性图 Fig4-13 Administrators Entity Attribute Graph 辅导员专家实体属性图如图 4-14 所示。 t_zhuanjia idtname tloginnumtsex tpsw 图 4-14 辅导员实体属性图 Fig4-14 Teacher Entity Attribute Graph 用户信息实体属性图如图 4-15 所示。 t_student studentname studentsex studentnummajor studentpswdormflag dormname 图 4-15 学生实体属性图 Fig4-15 Student Entity Attribute Graph 班级实体属性图如图 4-16 所示: 辽宁工程技术大学毕业设计(论文) 27 t_class classname classmajor classid peoplenum teacherid dormflag 图 4-16 班级实体属性图 Fig4-16 class Entity Attribute Graph 宿舍实体属性图如图 4-17 所示: t_dormitory dormitorynum dormitorynamepeoplenumpeoplesexdormflag bedone bedtwobedthreebedfourclassiddormlevel 图 4-17 宿舍实体属性图 Fig4-17 dormitory Entity Attribute Graph 辅导员专家实体属性图如图 4-18 所示。 t_checkdorminfo idtitle shijiandetails 孙旭:基于 JSP 的辽工大软件学院公寓管理系统的设计与实现 28 图 4-18 检查信息实体属性图 Fig4-18 check information Entity Attribute Graph 医院预约咨询系统的 E-R 图,如图 4-19 所示。 t_dormitoryt_class t_student 包含 居住 图 4-19 公寓管理系统 E-R 图 Figure 4-19 the apartment of student manage system E-R diagram 4.3.2 关系模式设计 系统的关系模式如下 (1)管理员信息表(管理员 ID,管理员姓名,管理员密码,类型) (2)宿舍信息表(宿舍 ID,宿舍号,人数,性别,是否分配,床位一,床位二,床 位三,床位四,所属班级 ID,宿舍等级) (3)班级信息表(班级 ID,班级名称,所属专业,人数,教师 ID,宿舍标志) (4)检查信息表(检查信息 ID,活动标题,发布时间,详细内容) (5)学生信息表(学号,姓名,性别,专业,密码,宿舍标志,宿舍号) (6)教师信息表(教师 ID,姓名,性别,密码,登录名) 4

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论