基于java的学生宿舍管理系统(含源文件)

欢迎添加微信互相交流学习哦!

二维码

项目源码:https://gitee.com/oklongmm/biye

学生宿舍管理系统
 
摘  要
随着电脑的普及与使用,现在的管理也提升了一个档次,渐渐实现了无纸化办公,即从原来的人工记录管理模式转变为电脑一体化管理。高校是科研的阵地,后勤的宿舍管理也应该一改传统的人工管理,更加信息化,时代化,节省人力物力,提高效率。学生宿舍是每一位在校学生生活、学习、相互交流的主要场所,如何提供一个良好的学生宿舍的管理体系,对学校和同学而言至关重要。以往的学生宿舍管理基本上还处于人工操作的阶段,随着计算机技术和网络技术的日益广泛应用,采用计算机以及网络来管理学生宿舍,有着很好的前景。基于这一点,开发此学生宿舍管理软件。
论文将设计一个学生宿舍管理系统的Web应用解决方案并予以实现。学生宿舍管理系统是一个安全和高效的专用系统,。这个系统使用了很多技术,比如JSP,JDBC等。专用系统使用的数据库是SQL Server 2005 数据库。基于JSP学生宿舍管理系统的主要功能包括:可以实现对学生宿舍信息的录入功能,修改功能,删除功能。通过系统上述功能实现宿舍管理部门对于学生宿舍信息的日常管理,即方便宿舍管理人员及时全面地掌握学生住宿情况及宿舍分配情况;为用户(管理用户和一般用户,如学生)提供了一些简单的数据查询并输出各种信息等;在实现检索迅速和查找方便的同时,对新入校学生很快地进行宿舍安排等日常管理。
关键字:宿舍管理,学生宿舍信息,B/S模式;SQL Server 2005


Abstract
With the popularity of computers and use, current management has improved a notch, and gradually achieve a paperless office, from the original manual records management into the integrated management of the computer. Colleges and universities are research positions, dormitory management of logistics should also be changed the traditional manual management, more information, times of, saving manpower and resources and improve efficiency. Each dormitory is the student life in school, learning, the main place to communicate with each other, how to provide a good student hostel management system is critical for schools and students. Dormitory Management is basically the previous manual operation is still in the stage, with the computer technology and network technology becomes more widely used, the use of computers and networks to manage the student hostel, with good prospects. Based on this, developing the student dormitory management software. 
    Thesis, a student hostel management system solutions and Web applications to be realized. Student hostel management system is a safe and efficient dedicated system. The system uses a number of technologies such as JSP, JDBC and so on. Dedicated system using the database is SQL Server 2005 database. Dormitory Management System based on JSP main features include: can the student dormitories information input function, modify the function, delete function. Through the system to achieve the above functions for the student hostel dormitory management information, daily management, the management staff to facilitate timely accommodation of students fully grasp the allocation of accommodation and hostels; for the user (management of users and general users, such as students) to provide some simple data query and export all kinds of information; in achieving rapid and find easy to retrieve the same time, new students quickly into the arrangements for the daily management of the hostel. 
Keywords: dormitory management, information on student hostels, B / S mode; SQL Server 2005 
 
目  录
摘  要    1
Abstract    2
1引言    1
1.1选题背景    1
1.2研究意义    1
1.3研究思路和方法    2
1.4预期结果    2
2开发平台及语言介绍    3
2.1基于B/S结构开发    3
2.2 JAVA语言简介    3
2.3 JSP技术    3
2.4  Tomcat    5
2.5 SQL Server 2005    6
2.6 Eclipse    7
3需求分析    9
3.1基本要求分析    9
3.2设计条件分析    9
3.3系统技术分析    9
3.4可行性分析    10
3.4.1管理上的可行性    10
3.4.2技术上的可行性    10
3.4.3经济上的可行性    10
3.4.4分析结论    10
3.5系统功能分析    11
4总体设计    12
4.1系统功能模块的设计    12
4.2数据库设计    12
4.3物理结构设计    14
4.4出错设计    14
5详细设计    15
5.1登入界面    15
5.2管理登录主界面    15
5.2.1录入学生信息    16
5.2.2 熄灯时间设置    17
5.2.3 宿舍添加    17
5.2.4来访者添加    17
5.2.5 卫生检查信息录入    18
5.2.6 保修信息审批    18
5.3 学生登录主界面    19
5.3.1添加报修    19
5.3.2 卫生排名信息查询    19
6 系统调试与测试    20
6.1 程序调试    20
6.2 程序的测试    20
6.2.1 测试的重要性及目的    20
6.2.2 测试的步骤    21
6.2.3 测试的主要内容    22
6.3总结    23
结    论    24
致谢    25
参考文献    26
 

1引言
随着中国高等教育规模的不断扩大,各高校都面临着各种各样的问题,而共有的一个问题就是学生宿舍日益紧张。如何合理安排学生住宿是高校后勤改革中必须考虑的一个重要问题。设计一个宿舍管理系统可以使这个问题变得简单易行,并有一定的通用性,可以推广到不同的高校。
宿舍管理系统的信息量比较大,数据安全性和保密性要求较高。本系统可实现对宿舍信息、学生信息、管理人员信息的查询、输出和维护。工作人员可浏览、查询、添加、删除、修改、统计各种基本信息。
使用计算机对宿舍信息进行管理,具有手工管理所无法比拟的优点,例如:查找便捷、可靠性高、存储量大、保密性好、成本低等。这些优点能够极大的提高管理日益增多的宿舍的效率。 
论文通过宿舍管理需求分析,介绍了本课题所要完成的功能和开发的过程。通过这次论文的设计使的自己更深入的了解JAVA及其强大的功能,同时也提高了自己的软件开发能力和编程能力。由于时间仓促和本人水平有限,不当之处在所难免,请各位老师批评指正。  
1.1选题背景
学生宿舍是每一位在校同学生活、学习、相互交流的主要场所,如何提供一个良好的学生宿舍的管理体系对学校和同学而言至关重要。以往的学生宿舍管理基本上还处于人工操作的阶段,随着计算机技术和网络技术的日益广泛应用,采用计算机以及网络来管理学生宿舍似乎也已经不是一件新鲜事了。本毕业设计的目的主要是为了检查学生综合运用以前所学知识的能力,开发一个多功能的学生宿舍管理系统。       
1.2研究意义
为了方便宿舍管理人员在数据方面的管理,结合当今各学校的宿舍管理,为了能全面、准确、有效地管理学生宿舍的各种信息而开发与研制的一个系统。其主要功能是快速适应现代化物管水平和解决工作人员繁重而冗长的工作量。使得他们在学生宿舍的各方面都会达到事半功倍的效果,减轻了人力的负担,方便了数据的存储,增加了安全性。本次毕业设计不仅考查了我综合运用以前所学知识的能力,同时也锻炼了我的实际动手能力,对于我以后工作能力的培养具有重要的意义。
1.3研究思路和方法
本次毕业设计应首先分析学生宿舍管理系统的相关功能,结合本次毕业设计的相关要求写出需求分析;其次,综合运用以前所学的相关知识,选择JSP+ SQL Server 2005进行本毕业设计的开发;以需求分析为基础,写出系统开发计划、实现流程及相关问题的实现方法;同时,在开发设计与实现中,要保存好相关设计文挡,为毕业论文的写作准备材料;最后,系统开发完毕后,进行调试和试运行,做好调试和试运行的相关记录,为毕业论文的写作准备材料。
1.4预期结果
本设计的预期成果是完成一个学生宿舍管理系统,从而使学生宿舍的管理更加方便有效;提供本毕业设计开发的软件和毕业设计论文。

2开发平台及语言介绍
2.1基于B/S结构开发
由于学生宿舍管理系统分布的特性,本系统采用B/S结构,即Brower-Server(浏览器-服务器)架构,B/S 结构是目前最流行的数据库应用模式,它解决了各种分布式应用,扩展了业务范围;在B/S结构下,整个系统的管理、资源分配、数据库操作、业务逻辑部件的管理等工作集中用服务器,容易部署和管理。
整个系统使用B/S架构,则在客户端使用标准的Web页面浏览器(如Internet Explorer等),不需安装特殊的应用程序,减少了升级和维护的难度,所有的业务数据都保存在服务器(Server)端,确保了业务的安全;在通讯方面,由于使用的是标准的Http协议,使得系统可以轻松的实现移动管理和分布式管理。
2.2 JAVA语言简介
Java是一种简单易用、完全面向对象、具有平台无关性且安全可靠的主要面向Internet的开发工具。自从1995年正式问世以来,Java的快速发展已经让整个Web世界发生了翻天覆地的变化。在早期,Java比较多的用在浏览器上,插入到网页中(即是Java Applet程序),成为最灵活、最强大的网页多媒体的载体,但由于Java虚拟机相对于个人电脑而言,有占用资源大,安全性相对较差等缺点,Applet逐渐的被后起之秀Flash所替代,但随着Java Servlet的推出,Java在电子商务方面开始崭露头角,最新的JSP(Java Server Page)技术的推出,更是让Java成为基于Web的应用程序的首选开发工具,目前的Java技术已成为所有大型电子商务项目的必然选择。
2.3 JSP技术
JSP是“Java Server Pages”的缩写,可以解释为“基于Java的服务端动态页面技术” [4]基于Java是JSP一切优秀品质的根本物质基础。因为Java是编译解释执行的,所以JSP也就摆脱了VBScript、Perl等脚本语言纯粹的解释执行带来的低效率问题。尽管在JSP中Java仍被称为脚本语言。因为Java是平台无关的,所以JSP是跨平台的。基于Java是JSP区别包含ASP(Active Server Pages)在内的其它服务端动态页面技术的重要特征。JSP是服务端技术,所以JSP文档要先经服务端翻译、解释、执行,才能得到客户端浏览器能识别的HTML文档。这是当前Web技术的潮流,是解决客户端浏览器兼容性问题的客观需要。服务端技术是JSP区别于JavaScript、VBScript等客户端动态页面技术的重要牲。JSP是一种页面技术,而现在JSP只实现了HTTP(Hypertext Transfer Protocol)协议,只能应用于Web页面。这是JSP区别于Servlet的重要牲。JSP是一种动态技术,这是JSP基于Java的自然延伸。在页面中引入程序设计语言的目的是正是为了实现动态交互。因此,JSP就是基于Java的服务端动态页面技术。
JSP技术让动态网面更易编写,功能更强,可移植性更好。概括起来,JSP的设计目标主要有以下几点:
a)一次编写,到处运行
JSP技术是完全的与平台无关的设计,包含它的动态网页与底层的服务组件设计。可以在任何平台下编写JSP网面并且在任何支持JSP的系统上执行。
也可建立自已的组件,并在JSP中使用。目前主要是JavaBean和Java Servlet,而它们都是跨平台的。
b)加强组件能力
JSP技术以Java的组件模型JavaBean为基础,加强了组件的使用能力。
这不但省去了一些开发时间,而且还可以将网页页面设计和商业分开,有助于快速开发和维护。
c)作为Java企业平台的门户
JSP高度整合了Java企业平台部分(Java专注于企业应用方面的平台技术)。可以Java的企业级API(Application Programming Interface)开发企业的各种需求系统,而使用JSP作为这些技术的前端。当需要升级应用程序时,只需升级组件与动态页面部分,而这些都存在于服务器上,所以修改服务器上的资源,客户端的显示即会跟着改变。
d)更容易建立动态页面
JSP就是用标准HTML语法混合自身语法标记,就是如此简单,不需要有使用Java、C++等程序设计语言的能力与经验。可以这么说,它的出现也正是要实现简单容易的开发页面的需要,否则它与Java Servlet相比没有任何存在的理由。
JSP2.0是对JSP1.2版本的升级,其中增加了一些有趣的新特性。JSP2.0的设计目标是使动态网页的设计、开发和维护更加容易,网页编写者不必懂得Java编程语言,也可以编写JSP网页。JSP2.0增加了一种称为SimpleTag的扩展机制来简化标签API(Tag API)。JSP2.0引入的最主要的新特性包括[2]:
a)  引入简单表达式语言(EL,Expression Language),它用于JSP页面中的数据访问。这种表达式语言简化了JSP中数据访问的代码,不需要使用Java Script或者Java表达式。
b)  引入创建自定义标签的新语法,该语法使用.tag和.tagx文件,这类文件可由开发人员或者网页作者编写。
c)  对XML语法做了实质性的改进,增加了新的标准文件扩展名(.tagx用于标签文件,.jspx用于JSP文件)。
2.4  Tomcat
Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache、Sun和其它一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和Jsp规范总能在Tomcat中得到体现。
Tomcat服务器是在SUN公司的JSWDK(JavaServer Web DevelopmentKit,SUN 公司推出的小型Servlet/JSP调试工具)的基础上发展起来的一个优秀的Java Web应用容器。Tomcat已经被JavaWorld杂志的编辑选为2001年度最具创新力的Java产品,同时它又是SUN公司官方推荐的Servlet/JSP容器[14]。作为一个开放源码的软件,Tomcat得到了开放源码志愿者的广泛支持,它可以和目前大部分主流HTTP服务器一起工作(如IIS和Apache服务器),而且运行稳定、可靠、效率高。同时,它还提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。
作为Servlet容器,Tomcat负责处理客户请求,把请求传送给Servlet并把结果返回给客户。Servlet容器与Servlet之间的接口是由Java Servlet API定义的,在 Java Servlet API中定义了Servlet的各种方法,这些方法在Servlet生命周期的不同阶段被Servlet容器调用;Servlet API还定义了Servlet容器传递给Servlet的对象类,如请求对象ServletRequest和响应对象ServletResponse。
当客户请求访问某个Servlet时,Servlet容器将创建一个ServletRequest对象和ServletResponse对象。在ServletRequest对象中封装了客户请求信息,然后Servlet容器把ServletRequest对象和ServletResponse对象付给客户所请求的Servlet。Servlet把响应结果写到ServletResponse中,然后Servlet窗口把响应结果传给客户。
Tomcat已经为Servlet和JSP提供了强大的支持,Servlet和JSP最新技术规范都可以在Tomcat中及时地得到实现。Tomcat应用已经成为目前开发企业Java Web应用的最佳选择之一。
2.5 SQL Server 2005
SQL Server 2005是微软推出的一个大型的关系型数据库管理系统。作为Windows数据库中出类拔萃的成员,SQL Server 2005能够满足各种类型的企业客户和独立软件供应商构建商业应用程序的需要。SQL Server的可伸缩性既可以适应很小的兆字节个人数据库,也可以适应由数以万记用户使用的巨大的太字节数据库。
SQL Server 2005是一种客户机/服务器模式的数据库管理系统,这种体系结构把所有的工作负荷分解成在服务器机器上的任务和在客户机机器上的任务,有效地了资源,减轻了服务器的压力。
Microsoft SQL Server 2005能够提供特大系统所需要的数据库服务。在大型客户/服务器系统中,成千的用户可能同时连接一个SQL Server 2005实例,SQL Server 2005有强大的保护功能来处理这种情况。SQL Server 2005也可以有效地为多个用户分配可用的资源,如内在、网络带宽和磁盘I/O等。
非常大的Internet站点能够将它们的数据在多个服务器间划分,将处理负担分布到许多计算机上,且允许站点为大量用户服务。
多实例SQL Server 2005可以在单台计算机上运行。例如,为许多其他组织提供数据库服务的组织可以为每个用户组织运行一个单独的SQL Server 2005实例,所有实例都在一台计算机上。这样使得每个用户组织的数据相互独立,而服务组织只管理一个服务器计算机来减少开支。
SQL Server 2005应用程序也可以像SQL Server 2005一样运行在同一台计算机上。应用程序使用Windows Interprocess Communications(IPC)组件,如共享内存来连接SQL Server 2005,而不是网络。这样SQL Server 2005就可以在小系统上使用,此时应用程序必须在本地保存它的数据。
SQL Server 2005还支持对多节点群集的规模扩充(Scale Out),即把一个巨型数据库分区到一个服务器群集中,但是对于用户来说,整个数据库的存储和访问就像是对待一个单独的数据库那样。通过使用这种扩充规模的伸缩样式,SQL Server2000达到了任何数据库系统在任何平台上所能达到的性能。故障切换和恢复这两种技术内置到了SQL Server系统中,使得SQL Server具有了高度的可用性[16]。
2.6 Eclipse
Eclipse最初是IBM公司的一个软件产品,2001年11月其1.0版正式发布。面世之初,Eclipse还很不起眼,并饱受业界批评。所谓万事开头难,软件的初版一般都比较稚嫩。到2003年3月,Eclipse发布了它的2.1版,立刻引起了轰动,下载的人蜂拥而至,导致它的下载服务器都因超载而拥塞了。
现在,IBM已将投入巨资开发的Eclipse作为一个开源项目捐献给了开源组织Elipse.org,Eclipse出色而有独创性的平台,吸引了众多大公司加入到Eclipse这个平台的发展上来,这样的公司有HP、Oracle、Sybase、Borland、RedHat、Rational Software、SuSE、Together Soft等。
最初Eclipse的开发人员,大部分都来自于当年与JBuilder齐名的Visual Age项目组,现在虽然IBM已将Eclipse捐献给了开源组织,但仍由IBM的子公司OTI(主要从事Eclipse开发的人)继续领导着Eclipse的开发[11]。
Eclipse是一种通用工具平台——普遍适用的开放式扩展IDE(Integrated Develop Environment)。它拥有功能丰富的开发环境,并允许开发者高效地创建一些能够无缝集成到Eclipse平台中的工具。
Eclipse的设计思想是:一切皆为插件。Eclipse的核心是非常小的,其它所有的功能都以插件的形式附加到这个Eclipse核心之上。这样的功能插件包括它的图形API(称为SWT/JFace)、Java开发环境插件、插件开发环境等。Eclipse还对这些插件的协同工作提供了良好的支持,不仅安装简单,而且还可以无缝结合。
Eclipse对这些插件是动态载入动态调用的。所谓动态就是指,Eclipse启动后要真正用到这个插件时,它才会被调入内存。当插件不再被使用时,它就会被在适当的时候清除出内存。因此即使装了一大堆插件在Eclipse里,也不必担心某些不常用的插件白白占着内存。
此外,Eclipse有极为强大的集成开发环境,它集成了CVS,JUnit和Ant,并且强大的代码重构功能独步江湖无人能及。因为Eclipse的安装包集成了Java开发环境的插件JDT,所以Eclipse默认是一个和JBuilder类似的Java开发工具。但Eclipse不仅仅只是Java的开发工具,我们只需要装上C/C++的插件,就可以把它当作一个C/C++开发工具来使用。只要有相应的插件,Eclipse也可以用做其他语言的开发工具。Eclipse的这种插件扩展机制是其最突出的特点和优势,它使Eclipse提升到了一个平台的高度。我们可以Eclipse的插件开发环境来开发自己的Eclipse插件,随己所需地扩展Eclipse的功能。

3需求分析
3.1基本要求分析
宿舍信息系统应该便于院系的宿舍管理,提高工作效率。能有效地对数据进行更新查询,并能在一定程度上实现自动化。
1)本系统的主要功能:学生管理,宿舍公告信息管理,宿舍管理,来访者信息管理,卫生检查信息管理以及保修审批管理。
2)系统性能:应方便快捷地完成宿舍管理的各项工作,数据查询速度快,查询安全、准确,数据合法性检验度高。
3)系统输入:学生的各种信息,包括学号、班级等。
3.2设计条件分析
该系统至少需要一台主机作为服务器,并且该主机要以独立的IP接入互联网。如果需要的话,可以为此IP申请域名绑定。具体系统需求如下:
Windows XP 或Windows 2000
SQL Server 2005数据库服务器
JRE 1.4.2_03 或更高版本的Java运行时环境
Tomcat 5.0.28 或更高版本的应用服务器
3.3系统技术分析
①本宿舍管理系统的简单描述:宿舍管理系统采用常规的数据管理方法,根据宿舍信息管理的特点对数据库操作,如对数据的增加、删除、修改等。
②数据流程。本系统数据流程如图3-1

 图3-1本系统数据流程如图
③与现有人工管理系统相比的优越性。宿舍管理系统有利于数据的集中、有效管理,与人工管理相比,本系统占据空间小,易更新,易备份,可有效地实现各种查询。
3.4可行性分析
通过前期信息收集,对设计开发的学生宿舍信息管理系统进行了可行性分析,分析如下:
3.4.1管理上的可行性
设计开发的信息管理系统面向的是学校内部宿舍,管理部门的工作人员都具备一定电脑基本操作技能。而且目前的宿舍管理制度也比较完善,实现管理人员查询相关资料的信息化,可将使宿舍管理部门的办事效率提高到一个新的档次。
3.4.2技术上的可行性
设计开发的信息管理系统采用SQL Server 2005数据库,可实行数据信息自动化管理,高效率进行数据处理。而且通过使用计算机网络化来处理信息,宿舍管理部门的工作人员只需懂得计算机操作的初步知识和上网知识即可。
3.4.3经济上的可行性
成本低:通过运用计算机技术,进行信息化管理;虽然计算机资源需要一定的开支,但可以充分利用其部门已有的资源(其部门已有计算机);这样可以减少不必要的人力,物力和财力的支出。
该系统在将来经济允许的条件下还可进行系统扩展。
3.4.4分析结论
通过以上的分析,管理、技术、经济都具有可行性,故该信息管理系统可以进行设计和实现。  
3.5系统功能分析
针对管理中心日常宿舍信息管理工作收集到的信息来分析,管理中心的工作人员可以对入住学生信息登记,对其资料进行编辑存档;工作人员可对各入住学生信息可进行查询;可实现学生的卫生检查以及设备保修等功能操作。此外,考虑到本信息管理系统是基于B/S体系结构的Web应用程序,将面对不同用户(主要是管理中心工作人员和一般用户,一般用户就是学生)的使用,对于不同用户应具备对本信息管理系统不同权限的功能操作,因此需要一个用户管理功能。

4总体设计
本系统旨在为宿舍管理人及其用户提供一个功能齐全、使用方便的管理系统,以代替现有人工管理方法。
本系统的主要用户有:学生和宿舍管理员。
4.1系统功能模块的设计
该学生宿舍管理系统主要实现了对学校宿舍的管理功能。系统分为管理员模块和学生模块两个部分。
管理员模块实现的功能有:
1)    学生信息管理功能:主要是添加学号,姓名,性别,年龄,政治面貌,班级,登录帐号以及登录密码等属性,也可以删除不存在的学生。
2)    宿舍信息管理功能:主要是添加房间号,学生人数,学生班级和楼号等属性,也可以删除无用的宿舍信息。
3)    公告信息管理功能:设置学校的静校时间和熄灯时间。
4)    卫生检查信息功能:主要是录入卫生检查信息,查询卫生检查信息以及根据得分排名。
5)    保修审批功能:学生使用系统申报需要修的设备,管理员使用保修审批功能进行操作。
学生模块实现的功能有:
1)    保修模块:学生可以添加保修信息,并且查看我的保修。
2)    卫生排名信息:可以查看各宿舍卫生排名的信息。
4.2数据库设计
本系统采用广泛使用并较易掌握的JAVA作为编程语言进行数据库设计。数据库的物理设计阶段是根据数据模型、数据库管理系统及计算机系统, 设计数据库的物理结构(存储结构和存取方法) 。物理设计的目的是提高系统的处理效率, 充分利用计算机存储空间。下面列出宿舍管理系统所有表的结构及索引, 以便进行系统的运行调试。数据库共含7张表,分别如下所示:
1.管理员表
 
2.报修信息表
 
3.来访信息表
 
4. 熄灯时间表
 
5.学生信息表
 
6.宿舍信息表
 
7.卫生信息表
 

4.3物理结构设计
数据库的物理设计阶段是根据数据模型、数据库管理系统及计算机系统, 设计数据库的物理结构(存储结构和存取方法) 。物理设计的目的是提高系统的处理效率, 充分利用计算机存储空间。
1)数据库文件物理结构采用顺序记录方式。
2)全局变量用于保存用户数据连接字符、用户姓名等。
4.4出错设计
软件在运作时需要出错的提示,在身份验证、查询信息、修改密码时可能出现输入错误或没有这用户等情况,所以必须设计出错提示信息。
1)充分考虑各种系统错误,给出相应提示信息,避免数据的不一致性或损坏数据。
2)对重要操作提供确认机制。


5详细设计
5.1登入界面      
登入界面是用来让管理员或学生按照用户名和口令并选择身份进行登录,并且根据用户名检查user表中的“用户名”和“密码”的字段,以分辨是不是合法用户,是合法用户就会进入系统,就可以使用系统提供的所有功能,如果不是合法用户就会退出。登入界面如图5-1:
 
图5-1登录界面
5.2管理登录主界面
管理员登录系统主界面如下所示:
 
图5-2 主界面

5.2.1录入学生信息
 
图5-3 录入学生
5.2.2 熄灯时间设置
 
图5-4 熄灯时间设置

5.2.3 宿舍添加
 
图5-5 宿舍添加
5.2.4来访者添加
 
图5-6 来访者信息添加

5.2.5 卫生检查信息录入
 
图5-7 卫生检查信息录入
5.2.6 保修信息审批

图5-8保修信息审批

5.3 学生登录主界面
 
图5-9学生登录主界面
5.3.1添加报修
 
图5-10 添加报修

5.3.2 卫生排名信息查询
 
图5-11卫生排名信息查询

6 系统调试与测试
6.1 程序调试
在设计系统的过程中,存在一些错误是必然的。对于语句的语法错误,在程序运行时自动提示,并请求立即纠正,因此,这类错误比较容易发现和纠正。但另一类错误是在程序执行时由于不正确的操作或对某些数据的计算公式的逻辑错误导致的错误结果。这类错误隐蔽性强,有时会出现,有时又不出现,因此,对这一类动态发生的错误的排查是耗时费力的。
6.2 程序的测试
6.2.1 测试的重要性及目的
(1)测试的重要性
软件的测试在软件生命周期中占据重要的地位,在传统的瀑布模型中,软件测试学仅处于运行维护阶段之前,是软件产品交付用户使用之前保证软件质量的重要手段。近来,软件工程界趋向于一种新的观点,即认为软件生命周期每一阶段中都应包含测试,从而检验本阶段的成果是否接近预期的目标,尽可能早的发现错误并加以修正,如果不在早期阶段进行测试,错误的延时扩散常常会导致最后成品测试的巨大困难。 
事实上,对于软件来讲,不论采用什么技术和什么方法,软件中仍然会有错。采用新的语言、先进的开发方式、完善的开发过程,可以减少错误的引入,但是不可能完全杜绝软件中的错误,这些引入的错误需要测试来找出,软件中的错误密度也需要测试来进行估计。测试是所有工程学科的基本组成单元,是软件开发的重要部分。自有程序设计的那天起测试就一直伴随着。统计表明,在典型的软件开发项目中,软件测试工作量往往占软件开发总工作量的40%以上。而在软件开发的总成本中,用在测试上的开销要占30%到50%。如果把维护阶段也考虑在内,讨论整个软件生存期时,测试的成本比例也许会有所降低,但实际上维护工作相当于二次开发,乃至多次开发,其中必定还包含有许多测试工作。 
在实践中,软件测试的困难常常使人望而却步或敷衍了事,这是由于对测试仍然存在一些不正确的看法和错误的态度,这包括: 
① 认为测试工作不如设计和编码那样容易取得进展难以给测试人员某种成就感; 
② 以发现软件错误为目标的测试是非建设性的,甚至是破坏性的,测试中发现错位是对责任者工作的一种否定; 
③ 测试工作枯燥无味,不能引起人们的兴趣; 
④ 测试工作是艰苦而细致的工作; 
⑤ 对自己编写的程序盲目自信,在发现错误后,顾虑别人对自己的开发能力的看法。 
这些观点对软件测试工作是极为不利的,必须澄清认识、端正态度,才可能提高软件产品的质量。 
(2)测试的目的 
如果测试的目的是为了尽可能多地找出错误,那么测试就应该直接针对软件比较复杂的部分或是以前出错比较多的位置。 
① 软件测试是为了发现错误而执行程序的过程; 
② 测试是为了证明程序有错,而不是证明程序无错误; 
③ 一个好的测试用例是在于它能发现至今未发现的错误; 
④ 一个成功的测试是发现了至今未发现的错误的测试。 
这种观点可以提醒人们测试要以查找错误为中心,而不是为了演示软件的正确功能。但是仅凭字面意思理解这一观点可能会产生误导,认为发现错误是软件测试的唯一目,查找不出错误的测试就是没有价值的,事实并非如此。 
首先,测试并不仅仅是为了要找出错误。通过分析错误产生的原因和错误的分布特征,可以帮助项目管理者发现当前所采用的软件过程的缺陷,以便改进。同时,这种分析也能帮助我们设计出有针对性地检测方法,改善测试的有效性。其次,没有发现错误的测试也是有价值的,完整的测试是评定测试质量的一种方法。
6.2.2 测试的步骤
与开发过程类似,测试过程也必须分步骤进行,每个步骤在逻辑上是前一个步骤的继续。大型软件系统通常由若干个子系统组成,每个子系统又由若干个模块组成。因此,大型软件系统的测试基本上由下述几个步骤组成:
(1)模块测试 在这个测试步骤中所发现的往往是编码和详细设计的错误。
(2)系统测试 在这个测试步骤中发现的往往是软件设计中的错误,也可能发现需求说明中的错误。
(3)验收测试 在这个测试步骤中发现的往往是系统需求说明书中的错误。
6.2.3 测试的主要内容
为了保证测试的质量,将测试过程分成几个阶段,即:代码审查、单元测试、集成测试、确认测试和系统测试。 
(1)单元测试 
单元测试集中在检查软件设计的最小单位—模块上,通过测试发现实现该模块的实际功能与定义该模块的功能说明不符合的情况,以及编码的错误。 
(2)集成测试 
集成测试是将模块按照设计要求组装起来同时进行测试,主要目标是发现与接口有关的问题。如一个模块与另一个模块可能有由于疏忽的问题而造成有害影响;把子功能组合起来可能不产生预期的主功能;个别看起来是可以接受的误差可能积累到不能接受的程度;全程数据结构可能有错误等。 
(3)确认测试 
确认测试的目的是向未来的用户表明系统能够像预定要求那样工作。经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是确认测试的任务,即软件的功能和性能如同用户所合理期待的那样。 
(4)系统测试 
软件开发完成以后,最终还要与系统中其他部分配套运行,进行系统测试。包括恢复测试、安全测试、强度测试和性能测试等。 
单独对系统的测试主要从以下几方面入手:
① 功能测试:测试是否满足开发要求,是否提供设计所描述的功能,是否用户的需求都得到满足。功能测试是系统测试最常用和必须的测试,通常还会以正式的软件说明书为测试标准。
② 强度测试及性能测试:测试系统能力最高实际限度,即软件在一些超负荷情况下功能实现的情况。
③ 安全测试:验证安装在系统内的保护机构确实能够对系统进行保护,使之不受各种非常的干扰。针对本系统主要是对权限系统的测试和对无效数据、错数据、和非法数据干扰的能力的测试。
经过上述的测试过程对软件进行测试后,软件基本满足开发的要求,测试宣告结束。 
6.3总结
系统完成后,进行了一系列的调试与测试,主要是针对系统功能是否按照设计要求正常工作,以及系统对大量数据的处理能力。
通过调试,系统功能都能正常工作,但调整了分页中显示的数据条数,修改了部分组件的显示位置,以达到一定美化效果;同时在对大量数据的处理方面,信息录入功能需要一条一条的录入,存在工作量较大的问题,其他功能不存在问题。
通过调试,用户管理功能发现设计上存在不完善的设计考虑,需要进一步完善,此外需要利用其他途径实现SQL与电子表之间的转换。
通过系统调试后,对于系统的后期扩展和建议如下:
1.    进一步完善用户管理功能的设计;
2.    寻找其他途径实现SQL与电子表之间的转换;
3.    与宿舍管理的其他子系统,如宿舍水电收费系统,宿舍人员来访考勤系统,宿舍物件维修管理系统等,进行组合使用.

结    论
通过自己不懈地学习JAVA的基本知识和开发技巧,以及系统后期的调试与完善,实现了学生宿舍信息管理系统的最基本的功能:
1.    实现了信息管理系统的查询功能,包括了快速查询功能和分类查询功能;
2.    实现了信息管理系统的信息录入,信息修改和信息删除功能;
3.    信息删除功能可批量删除信息,但信息录入功能未能做到批量录入,有点不足;
本次毕业设计对系统进行了详细的需求分析,对开发所需要的主要技术做了阐述。同时设计并实现了一个简单的学生宿舍管理系统。该系统基于B/S模式开发,使用JSP实现前后台的数据交互,后台选用SQL Sever 2005作为数据库服务器。该系统分为管理员权限和学生权限两个模块。系统经过调试和试运行,能够正常运行。但是因为初次开发,系统中难免会存在各种问题,有待进一步完善。
学生宿舍是每一位在校同学学习、生活和交流的地方,良好的管理体系对学校和同学都至关重要。该系统的研发,使后勤和管理人员脱离了人工操作阶段,适应了现代化物管的需要,减轻了工作人员繁重而冗长的工作量。同时也方便了数据的存储,增加了安全性。本毕业设计也锻炼了我综合运用以前所学知识的能力和实际动手能力。

致谢
本毕业设计是在老师的全程指导下完成的,王老师在系统设计方面具有非常丰富的经验,而且她将这些经验也无偿地传授给了我,才使得我的毕业设计可以按期顺利地完成,所以,在此要对王老师对我提供的帮助表示感谢!
同时,在整个毕设过程中,我周围的同学也给予了我很多帮助,为我解决了很多代码方面的问题,而且帮助我进行系统的测试,如果没有他们,我同样无法完成此次毕业设计,在这里也要感谢所有为我提供过帮助的同学!
在毕业设计期间,我也通互联网向无数的网友寻求过帮助,很多热情的网友也很热心地帮助我寻找问题、解决问题,在互联网这个虚幻的世界里也能有这么多好心人对我的毕业设计工作提供了巨大的支持,在此也要向这些不留姓名的好心人提出感谢!

参考文献
[1]孙卫琴,李洪成.《Tomcat 与 Java Web 开发技术详解》.电子工业出版社,2003年6月
[2]BruceEckel.《Java编程思想》. 机械工业出版社,2003年10月
[3]FLANAGAN.《Java技术手册》. 中国电力出版社,2002年6月
[4]孙一林,彭波.《Java数据库编程实例》. 清华大学出版社,2002年8月
[5]LEE ANNE PHILLIPS.《巧学活用HTML4》.电子工业出版社,2004年8月
[6]飞思科技产品研发中心.《JSP应用开发详解》.电子工业出版社,2003年9月
[7]耿祥义,张跃平.《JSP实用教程》. 清华大学出版社,2003年5月
[8]孙涌.《现代软件工程》.北京希望电子出版社,2003年8月
[9]萨师煊,王珊.《数据库系统概论》.高等教育出版社,2002年2月
[10]Brown等.《JSP编程指南(第二版)》. 电子工业出版社 ,2003年3月  
[11]清宏计算机工作室.《JSP编程技巧》. 机械工业出版社, 2004年5月
[12]朱红,司光亚.《JSP Web编程指南》.电子工业出版社, 2001年9月    
[13]赛奎春.《JSP工程应用与项目实践》. 机械工业出版社, 2002年8月
[14]美.霍尔著钟鸣等译. Servlet与JSP权威指南. 机械工业出版社. 2002-10-1
[15]刘彬主编. JSP数据库高级教程. 清华大学出版社. 2006-3-1
[16]飞思科技产品研发中心编著. SQLServer2000高级管理与开发. 电子工业出版社.2002-1-1
[17赵杰等编著. 数据库原理与应用(SQLServer). 人民邮电出版社. 2006-7-1
 

猜你喜欢

转载自blog.csdn.net/weixin_55459367/article/details/114410853