版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、【摘要】随着我国教育水平的提高和新生数量的增加,合理妥善高效的进行新生接待,不但成为各个学校亟待解决的问题,对于广大新生来说,也是最先让他们了解学校形象的一个好机会。但是许多学校没有采用通过高效的系统来操作解决新生报到的问题。开发一套新生报到管理系统,通过计算机高效准确的管理大学新生信息是迫切需要的。本系统主要通过开发一个项目,实现高效率的管理新生报到和学生信息等。系统主要使用Java语言进行开发,前台页面配合HTML+CSS+JS实现新生信息的录入以及数据查询,后台数据存取采用MySQL数据库。系统将分为前后台两个部分,前台为新生设计,通过验证码验证登录。新生可以查看班级和宿舍等模块的信息,
2、后台则是为管理员提供,管理员可以修改新生及班级等信息。【关键词】:Java;管理系统;MySQL数据库【Abstract】 With the improvement of education level and the increase of the number of new students in our country,New reception in reasonable and efficient is important. It is not only the question that urgently need to be solved by University.But al
3、so the good chance for the majority of the new students to learn about their new school. But generally, efficient student register system rarely be used. From the point of saving time and improving efficiency. Developing a system with accurate and efficient to manage the freshman information through
4、 computer is urgently needed.This system mainly develops a program to bring about efficient management of freshman registration and student information.The project is mainly developed using the Java language.The foreground is displayed with HTML+CSS+JS. Data is stored using the MySQL database.System
5、 will be divided into two parts, before and after, the front desk is provided to the new students, students login system by verify code. the background is in order to manage the content of the front desk. It is provided to manager the man who can update students and class information.【Key words】: Ja
6、va;Management system;MySQL database目 录TOC o 1-3 h u HYPERLINK l _Toc6734 1绪论 PAGEREF _Toc6734 1 HYPERLINK l _Toc13376 1.1课题背景 PAGEREF _Toc13376 1 HYPERLINK l _Toc2282 1.2目的和意义 PAGEREF _Toc2282 1 HYPERLINK l _Toc19742 1.3课题研究内容 PAGEREF _Toc19742 1 HYPERLINK l _Toc31958 1.4开发工具及技术 PAGEREF _Toc31958 2
7、HYPERLINK l _Toc28642 1.4.1开发平台 PAGEREF _Toc28642 2 HYPERLINK l _Toc27282 1.4.2开发技术 PAGEREF _Toc27282 2 HYPERLINK l _Toc12213 1.5本章小结 PAGEREF _Toc12213 3 HYPERLINK l _Toc28323 2 需求分析 PAGEREF _Toc28323 4 HYPERLINK l _Toc15618 2.1需求分析 PAGEREF _Toc15618 4 HYPERLINK l _Toc19933 2.2可行性分析 PAGEREF _Toc1993
8、3 5 HYPERLINK l _Toc3865 2.2.1 技术可行性 PAGEREF _Toc3865 5 HYPERLINK l _Toc30957 2.2.2 经济可行性 PAGEREF _Toc30957 5 HYPERLINK l _Toc22538 2.2.3 安全可行性 PAGEREF _Toc22538 5 HYPERLINK l _Toc13656 2.2.4 操作可行性 PAGEREF _Toc13656 5 HYPERLINK l _Toc31794 2.3功能需求 PAGEREF _Toc31794 6 HYPERLINK l _Toc24391 2.4本章小结 PA
9、GEREF _Toc24391 6 HYPERLINK l _Toc26388 3 系统功能设计 PAGEREF _Toc26388 7 HYPERLINK l _Toc16582 3.1系统功能模块图 PAGEREF _Toc16582 7 HYPERLINK l _Toc17311 3.2平台用例图 PAGEREF _Toc17311 8 HYPERLINK l _Toc4536 3.3数据库的分析与设计 PAGEREF _Toc4536 8 HYPERLINK l _Toc20529 3.3.1 数据库总体设计 PAGEREF _Toc20529 8 HYPERLINK l _Toc21
10、605 3.3.2 数据库原则设计 PAGEREF _Toc21605 8 HYPERLINK l _Toc6940 3.3.3 数据库概念设计 PAGEREF _Toc6940 9 HYPERLINK l _Toc22124 3.4数据库表的逻辑结构设计 PAGEREF _Toc22124 10 HYPERLINK l _Toc6605 3.5本章小结 PAGEREF _Toc6605 12 HYPERLINK l _Toc9804 4 系统主要功能实现 PAGEREF _Toc9804 13 HYPERLINK l _Toc22324 4.1 系统前台 PAGEREF _Toc22324
11、13 HYPERLINK l _Toc3507 4.1.1登录界面 PAGEREF _Toc3507 13 HYPERLINK l _Toc28288 4.1.2个人信息 PAGEREF _Toc28288 15 HYPERLINK l _Toc24426 4.1.3宿舍查询 PAGEREF _Toc24426 15 HYPERLINK l _Toc12841 4.1.4分班查询 PAGEREF _Toc12841 16 HYPERLINK l _Toc27431 4.1.5管理员界面示图 PAGEREF _Toc27431 16 HYPERLINK l _Toc1903 4.1.6修改密码
12、PAGEREF _Toc1903 17 HYPERLINK l _Toc3072 4.2 系统后台 PAGEREF _Toc3072 17 HYPERLINK l _Toc9343 4.2.1 用户新增 PAGEREF _Toc9343 17 HYPERLINK l _Toc4379 4.2.2 分班管理 PAGEREF _Toc4379 18 HYPERLINK l _Toc28396 4.2.3 班级查询 PAGEREF _Toc28396 19 HYPERLINK l _Toc22712 4.2.4 宿舍删除 PAGEREF _Toc22712 20 HYPERLINK l _Toc18
13、02 4.2.5 宿舍入住管理 PAGEREF _Toc1802 21 HYPERLINK l _Toc6310 4.2.6 收费管理 PAGEREF _Toc6310 23 HYPERLINK l _Toc12041 4.3 本章小结 PAGEREF _Toc12041 24 HYPERLINK l _Toc26478 5系统测试 PAGEREF _Toc26478 25 HYPERLINK l _Toc29697 5.1 测试方法 PAGEREF _Toc29697 25 HYPERLINK l _Toc29617 5.2 系统测试环境 PAGEREF _Toc29617 25 HYPER
14、LINK l _Toc28755 5.3 测试过程 PAGEREF _Toc28755 26 HYPERLINK l _Toc905 5.3.1登录模块测试 PAGEREF _Toc905 26 HYPERLINK l _Toc31235 5.3.2用户管理功能测试 PAGEREF _Toc31235 26 HYPERLINK l _Toc25588 5.3.3班级查询功能测试 PAGEREF _Toc25588 26 HYPERLINK l _Toc28812 5.3.4收费新增功能测试 PAGEREF _Toc28812 27 HYPERLINK l _Toc87 5.3.5删除用户功能测
15、试 PAGEREF _Toc87 27 HYPERLINK l _Toc24097 5.4本章小结 PAGEREF _Toc24097 28 HYPERLINK l _Toc28466 6结论及展望 PAGEREF _Toc28466 29 HYPERLINK l _Toc1768 参考文献 PAGEREF _Toc1768 30 HYPERLINK l _Toc16504 致谢 PAGEREF _Toc16504 311绪论1.1课题背景随着硬件,软件和网络的快速发展及广泛应用,人们正在引入信息社会和知识经济。因为当代信息技术和经营理念的蓬勃发展,建立完备的信息管理系统刻不容缓。学校的招生规
16、模逐年增大,入学新生人数往日剧增,在应对新生入学时需要采集更多资料。面对海量的新生资料,需要便捷的学生信息管理系统来提高处理新生报到问题的效率。 新生报到管理系统是一个典型的信息管理系统,对于新生报到管理系统主要开发任务应该包括前端页面开发和数据库开发。选择JSP来处理应用程序开发技术,是因为JSP提供集成开发环境和各种组件,特别是对数据库的支持,完成数据库中的各种操作,实现新生管理的目标。使用MySQL作为后端数据库。首先,建立初步的系统前端界面,根据学校对系统的需求进行不断修改和改进,直到形成能达到学校满意度的实用系统。1.2目的和意义新生报到管理系统是为了帮助学校解决新生报到的问题。在每
17、个新生来学校报到时将每个新生的基本信息输入到数据库中,这样可以减少通过学校入学考试取得入学资格,但不希望来到学校的新生的相关信息存储在学校的的相关数据库中,同时使用该系统可以对新生信息进行有序存储,万一数据丢失能够快速的恢复,易于查找和提高可靠性。 新生报到管理系统为校园信息技术的成功组建添上了浓墨重彩的一笔,在融汇了传统新生报到工作的经验报告,通过现代化的管理思想,利用信息技术规范新生信息的基本记录,以及班级宿舍等管理。该系统是为了管理员提供的的数字网络管理系统。基本目标是建立一个平稳的学生和学校之间在校内外交流信息的渠道,使信息技术成为促进教育生产力和提高学校管理和效率的有力工具。 学期开
18、始时各种关于学生的信息也增加了。面对大量的信息,为了减少学校工作量,为了提高学生入学信息的效率开发一个新生报到管理系统是必须要完成的、是刻不容缓的。通过这样的系统,可以实现信息的规范化管理,科学统计和快速咨询。这将减少管理人员的工作量。管理人员对系统进行管理,提高了教学质量,真正做到了教学计划中。1.3课题研究内容在计算机上建立新的学生管理系统可以实现快速录入,分类,搜索和删除。进入系统之前进行密码认证可确保系统的安全性,为学校提高工作效率,提高团队效率,为制定决策和监控学生状况提供了强有力的工具。1.4开发工具及技术1.4.1开发平台本毕业设计的功能模块使用Java作为后台开发语言,前台页面
19、配合HTML+CSS+JS实现数据显示,使用MyEclipse作为开发工具,使用MySQL数据库作为后台数据维护平台,使用Tomcat7作为应用服务器,在MyEclipse中启动服务器后,可以直接在IE浏览器中输入端口号及项目名称进入系统。1.4.2开发技术1、Java面向对象编程语言有很多,但是Java则一直因为其功能强大、简单易用等独特的特点,尤其是平台独立和可移植性使之深受人们喜爱。Java是一个完整的平台,有一个庞大的库1。它设计之初借鉴了C+语言的各种优点,此外,java SE API子集和java虚拟机可以统称为JRE(java运行时环境),和JRE支持Java程序2的标准环境。J
20、ava语言不仅本身含有许许多多的组件,能够自己适应很多的环境。而且为仍众多的第三方开源社区提供了支持,开放开源的组件作为解决方案,让人们更加得心应手的开发。Java最初是为嵌入式系统提供的一种解决方案,但是它现在应用的领域已经十分的广泛,包括桌面应用程序、分布式系统等3。2、EclipseEclipse也是一个被普遍运用的的多平台集成开发环境(IDE)。Eclipse本身只是一个框架平台。许多软件开发人员基于Eclipse开发他们自己的IDE.4,在这次系统制作中主要的还是MyEclipse10。使用它极大地提高了数据库的使用效率和和应用服务器的集成。它是一个功能性的JavaEE集成开发环境,
21、包括完整的编码、调试、测试和发布功能,完全支持HTML、Struts、JSP、CSS、Javascript、Spring、SQL、Hibernate5。3、HTML+CSS+JavaScriptHTML 是用来描述网页的一种语言,CSS样式定义如何显示HTML元素,JavaScript是一种脚本语言,在发往客户端之前他的源代码不需要编译,而是将文本格式的字符代码发送给浏览器由浏览器解释运行6。4、Tomcat服务器Tomcat作为Jakarta 项目中的一个核心项目。它是由 HYPERLINK /item/Apache/6265 t _blank Apache、Sun、一些公司及个人共同开发而
22、成的。服务器是一个免费的开源web应用服务器,属于轻量级应用服务器,Tomcat在中小型系统中并发访问用户并不是很多用例都是常用的,是首选开发和调试JSP应用程序。因为Tomcat服务器作为一个免费而且开源的J2EE容器,并且它提供了一个成熟且独立的管理工具。这让它丝毫不亚于那些商业化的竞争对手。5、JavaScriptJS,JavaScript,是一种轻量级的编程语言,可以插入HTML页面。使用JavaScript语言时,HTML的脚本必须位于与标签之间,而脚本可以放于和部分。与标志着JavaScript的开始和结束,而浏览器会自动解释并执行与之间的JavaScript代码。当然也可以选择在
23、外部文件中保存JavaScript,而外部文件一般存储着被多个网页使用的相对通用的代码。外部JavaScript文件的扩展名是.js。使用JavaScript的外部文件时,需要在与的标签属性src中设置该文件,例如:。6、MySql数据库MySQL是一种关系型为源代码开放型的数据库管理系统,由于MySQL的源代码对公众是开放的,所以每个人都可以根据自己的需求在General Public License的许可下下载并根据个人不同的需求对其进行修改7。MySQL之所以会受到大众的青睐,其根本原因是速度、可靠性与适应性。MySQL的标志-海豚的名字是sakila。虽然MySQL不具备非常完善的功能
24、,但由于它的源代码对公众开放,以及传播程度十分广泛,所以大部分公众都对它有所了解,甚至是正在使用它。1.5本章小结 介绍了关于新生报到管理系统的基本信息,新生报到管理系统的课题背景以及目的和意义,最后确定了新生报到管理系统的开发工具与技术。2 需求分析2.1需求分析新生入学管理系统是对学校管理的一种组合。根据新生入学管理信息所面对情况真实需求,提供了丰富的分析和管理功能。具有信息化,人性化的界面,是为提高高校管理的效率。新生报到管理系统的目的是为新生提供大学信息管理的帮助,为了减轻新生报到时管理人员的负担。为了顺利完成管理新生报到的任务,提高管理部门的工作效率。如果学校的新生报到流程只是依靠人
25、工管理,面对大量的新生信息,管理员无法迅速地提取出关于新生的重要信息,对新生的信息做出相应的判断和处理。学校的决策只能依据人工整理数据来发起,在浪费大量人力、物力的同时无法做到实时监控,难以保证数据的准确性和及时性。因此,先进的管理系统在实际操作中的实现就成为了一个可望而不可及的目标。鉴于现代科学管理理论和信息处理技术的高速发展,完善并建立信息管理系统是必不可少的。面对逐渐壮大的学校规模和新生群体的增加,需要处理的信息量也会随之变大,正是由于这样,就更加需要一个学生信息管理系统来提高管理部门的工作效率。一个高质量的管理系统,可以完成诸如规范管理、科学统计、快速查询等任务,降低管理部门的工作量。
26、特别是在面对大量数据时,交给计算机处理能充分发挥其优点,减少失误。计算机前期的信息管理系统开发是完成系统管理的充要条件。 系统中将会有两种类型的用户:普通用户和管理员。这两种用户的功能是截然不同的,管理员可以在系统新增普通用户,管理员可以添加新的宿舍,可以提供新生的缴费情况,而且可以将新生分配班级。普通用户即新生则可以查看上述的信息,方便掌握关于自己新宿舍,新班级的第一手信息。在具体制作系统时遇到了许多问题,通过参考书籍与结合网络上现有的知识。在实现时该将系统大概分为用户管理、分班管理、收费管理、宿舍管理4个功能。1分班管理模块:主要有分班管理和分班情况查询的功能。此模块主要是为学生分配班级,
27、还可以查询学生的分班情况,管理员可以添加删除班级。2收费管理模块:主要有收费情况登记和收费情况查询功能。该模块主要是为学生登记缴费的情况和查询收费情况。3宿舍管理模块:主要有宿舍分配和宿舍情况查询的功能。该模块主要是为报到的学生分配宿舍,还可以查询宿舍分配的情况。4用户管理模块:主要是录入前来报到的新生的资料:例如姓名、学号、出生日期等基本信息。2.2可行性分析2.2.1 技术可行性开发语言为java。java的社区活跃度强,可用有效插件多,可以为系统的功能开发提供良好的技术支持,而且java开发的web项目跨平台性最好,具有良好的移植性,方便后期的项目部署运维,经过多年的发展,java很多组
28、件经历了很多考验,保证了项目的稳定与数据安全,因此使用java语言进行项目开发,技术性具有可行性。2.2.2 经济可行性开发本课题的项目,需要投入的人力,物力资源要在可控范围内,软件层次,我们需要WindowsXP系统或者以上版本,tomcat服务器版本为6.0以上,jdk的版本为1.6,可以根据自己的环境进行适当修改,这些软件资源个人电脑可以满足,硬件资源建议使用规格为运行内存4GB及其以上内存,存储空间为500MB以上,处理器建议使用酷睿类型,综合考虑,经济上对开发者没有负担,经济具有可行性8。2.2.3 安全可行性Java 主要用于网络应用程序开发,因此对安全性有较高的要求。如果没有安全
29、保证,使用者在系统中输入的数据及数据库中的信息会受到严重威胁。Java 通过自己的安全机制防止了病毒程序的产生和下载程序对本地系统的威胁破坏,当Java 字节码进入编译器时,首先必须经过字节码校验器的检查,然后,Java 编译器将决定程序中类的内存布局,随后,类装载器负责把来自网络的类装载到单独的内存区域,避免应用程序之间相互干扰破坏9。最后客户端用户还可以限制从网络上装载的类只能访问某些文件系统。上述几种机制 结合起来,使得Java 成为安全的编程语言。因此使用Java进行项目开发,可靠性与安全性可以满足需求,具有可行性。2.2.4 操作可行性 本系统主要为高校的新生报到设计,由于高校的教职
30、工都具有一定的教育水平且新生报到管理系统的操作什么简单仅仅需要简单的输入,所以在高校职工操作时不会有任何问题。操作具有可行性。2.3功能需求本系统主要提供两种角色,一种是使用者的角色,一种是管理员,通过给不同角色分配不同权限,实现数据的有效隔离,保证了系统的安全运行,本系统最大的特点是使用操作简单、友好的提示信息。本系统将实现以下基本功能:新生报到系统采用MVC模式,主要使用JSP、Struts框架、Hibernate技术。Struts技术主要负责处理业务层的处理和前台页面的设计。Hibernate技术主要是持久化对象,我们可以通过操作类,代替对数据库中数据的操作10。该系统主要分为用户管理、
31、分班管理、收费管理、宿舍管理4个模块。系统的功能应能够完成:数据查询、数据更新、用户管理。数据查询:在管理员在系统中添加过数据之后,用户和新生都可以通过查询语句在系统的查询界面查询出自己需要的信息。数据更新:数据更新包裹数据删除和数据修改。数据删除功能将误加的新生的相应记录从数据库中删除(如新生未能够正常到校报到或者退学)。数据修改功能允许用户在系统分配的操作权限内对他选择的记录进行相关信息修改。用户管理:系统管理用户和普通用户。系统管理用户拥有对系统所有数据进行操作的权限。系统管理用户不仅可以修改任何人的信息而且可以对其他用户的信息进行修改。普通用户拥有查询权限并能对自己的用户密码进行修改。
32、 本系统的使用对象是学校职工、学校领导和维护人员,用户只要懂计算机的基本操作就可以使用该系统。2.4本章小结在这章中详细介绍了新生报到管理系统的需求分析,在本章中可以了解到新生报到管理系统共有几个模块以及每个模块的功能。接着是对于新生报到管理系统的可行性的分析,只有确切的得出结论:新生报到管理系统是可行的,才能继续开展接下来的数据库的设计工作和具体代码的编写。3 系统功能设计3.1系统功能模块图系统的根据对系统的功能进行分析我们总结新生报到管理系统的具体功能模块可以按照业务逻辑进行拆分,这样就可以实现业务与代码的分离,保证后期开发的高维护性,系统的整体设计出发点为用户角色,通过分析不同的用户角
33、色,实现功能划分,保证了不同角色不同功能,这样对系统的数据就做到了良好的隔离,下面是系统基于用户角色进行的功能划分,前台即新生登录后只能在界面上查看到查询关于自己的信息,在系统登录时加入了一个验证码功能只有当验证码输入正确时才能成功的进入系统,当管理员进入系统后则可以新增学生并且给学生分配不同的班级和宿舍,在分配宿舍时为了防止有的新生有特殊的要求,比如有的新生不想住一楼,特意在分配宿舍的界面加入了备注栏目。当新生有特殊要求时可以及时在系统中显示出来,从而提升系统的流畅度与高性能。系统的功能模块图如图3-1所示:学生信息管理系统 学生信息管理系统登录登录管理员新生管理员新生 入住查询收费管理入住
34、管理宿舍管理分班管理用户管理宿舍查询分班查询收费查询 入住查询收费管理入住管理宿舍管理分班管理用户管理宿舍查询分班查询收费查询 图3-1 系统功能模块图系统中管理员主要包含5个功能模块,分别是:用户管理、宿舍管理、分班管理、宿舍入住管理、收费管理。作为管理员是整个系统最关键的人物。因为整个新生报到管理系统都是由管理员发起,它可以新增新生,也只有他才可以添加新生,添加新的宿舍,并且可以添加班级,以及将新生分配到不同的班级,以及可以将误增的信息删除。管理员要及时的对新生的报到做出反馈,这是赋予管理员的特权,同时也是义务。对于新生报到的即时反馈,能够极大的提高新生对学校的感官,能够提高校的形象。3.
35、2平台用例图1、用户管理用例图(1)用例名称:用户管理(新生管理)(2)描述:管理员在登录进系统后可以在用户管理模块中选择新增学生信息即添加学生用户,同时可以删除,修改学生用户的信息,而新生在登录时只可以查询自己被分配的班级与宿舍等基础信息,不可以对系统的其他地方进行修改.(3)参与者:管理员和用户(4)用例图如图3-2用户管理用例图所示:用户管理用户管理 用户查询 管理员 用户查询用户修改用户删除用户新增用户修改用户删除用户新增用户图3-2用户管理用例图3.3数据库的分析与设计3.3.1 数据库总体设计用户在平台的交互操作很大一部分实质就是在操作数据库中的数据,正因如此,作为数据存储的重要媒
36、介-数据库的设计是十分重要的。因为数据具有核心的价值。数据库的设计不能脱离实际的应用需求而闭门造车。对数据进行的结构化设计要根据实际的业务需要来做,综合考虑到开发的成本、搭配的合理性以及操作的灵活性等,使用MySQL数据库是最佳的选择。MySQL数据库是完全免费的,使用它不需要任何费用,可以直接从网上免费下载11。3.3.2 数据库原则设计数据库在设计时,首要的原则是要根据实际的业务需求来设计。在设计好实体模型的基础后,再进一步考虑接下来的设计。再明确业务需求后,此时便可以开始进行数据库的概念设计,以明确实体间的关系。完成概念设计后,再开始进行数据库的逻辑设计。本系统在数据库的设计过程中,着重
37、于了下面4个方面:1)要层次分明、数据的布局要合理,确保数据的结构化、规范化和标准化12;2)要对数据冗余有正确的认识:数据冗余是要尽力去避免的,但是也不可以一味的追求减少数据冗余,一切以完成系统为前提.3)要设计好每个数据实体的主键和外键,这是处理好实体间关联的关键,同时也是数据参照完整性的保证;4)要维护好数据一致性和正确性;3.3.3 数据库概念设计数据根据对系统所做的需求分析、系统设计,规划出本系统使用的数据库实体分别为宿舍信息实体、班级信息实体、收费信息实体、新生信息实体和宿舍信息实体等。宿舍信息实体 宿舍信息实体包括宿舍编号、宿舍名称、注册时间、宿舍备注等属性。宿舍信息实体的E-R
38、图如3-3所示:宿舍信息宿舍信息宿舍备注注册时间宿舍编号宿舍名称图3-3 宿舍信息实体图2.班级信息实体 班级信息实体包括班级名称、新生名称和分班时间等属性。3.收费信息实体 收费信息实体包括新生名称、收费缘由、收费金额等属性。4.新生信息实体 新生信息实体包括新生姓名、联系方式、出生日期、新生密码、家庭住址、联系电话及籍贯等属性,新生信息实体的E-R图如3-4所示:新生信息新生信息新生姓名出生日期籍贯联系方式新生密码家庭住址联系电话图3-4 新生信息实体图5. 宿舍入住信息实体 宿舍入住信息实体包括宿舍名称、新生名称、床号、入住时间、备注信息等属性,其E-R图如3-5所示。宿舍入住宿舍入住床
39、号入住时间新生名称备注信息宿舍名称图3-5 宿舍入住信息实体图 3.4数据库表的逻辑结构设计根据上述E-R模型的设计,新生报到系统中各个表结构,下面将会作出详细说明:(1)用户表(t_user)承担着存储系统中所有用户的职责。本系统中所有的注册用户都在这张表中。用户注册的时候就要仔细填写好信息。用户表中包括新生的用户名(学号)、密码、姓名、出生日期、性别、联系方式、籍贯和家庭住址等字段,在本张表中将username即学号设为主键,当新生被加入系统中会给新生分配一个学号,为了防止重名的情况发生,所以学号这个概念是必须要引入的。此外在这张表中特地加入了紧急联系人和紧急联系电话,这样以防新生在学校发
40、生事故或者出现意外的时候能够尽快的联系到新生的监护人,方便处理接下来的事情。而且在表中增加了hobby这个成员,这样在登记新生信息时就可以多角度、全面的完善新生信息,有了这些信息管理员甚至可以在分配宿舍的时候将拥有共同爱好的人分配在一起,这样可以帮助新生入学时更快的融入这个新环境。具体如表3-1所示:表3-1用户表列名数据类型长度允许空是否主键说明usernamevarchar10Not null是学号passwordchar30Not null否密码namevarchar21Not null否姓名birthdaychar100Yes否生日sexvarchar5Yes否性别telchar100
41、Not null否电话jjlxrvarchar30Not null否紧急联系jjtelvarchar100Not null否紧急电话jgvarchar33Yes否籍贯locationvarchar20Yes否家庭住址hobbychar20Yes否爱好宿舍信息表(t_house)。表中包含了宿舍的大体信息。表的具体结构包括ID、宿舍的名称、宿舍的编号和创建时间,在宿舍表中显而易见的是宿舍的编号最为重要,只要有了准确的编号,新生才能够准确的找到宿舍。并且在管理员新增了一个宿舍后,宿舍表中就会给一个ID来显示已经有多少个宿舍,方便学校统计和统一管理。此外还添加了h_bz这个表成员,管理员可以填入这个
42、宿舍已经入住几个成员防止重复添加。表结构如表3-2所示:表3-2宿舍信息表列名数据类型长度允许空是否主键说明idInt32Not null是主键h_namechar20Not null否宿舍名称h_timetime40Not null否创建时间 h_numberchar50Not null否宿舍编号h_bzvarchar100Yes否宿舍备注(3)宿舍入住表(t_housemanage)主要是记录新生被分配到不同宿舍。在填写前,宿舍的信息和新生的信息必须存在的。因为如果没有新生信息和宿舍的信息,系统是无法将学生分配的即若想入住,新生信息和宿舍信息二者缺一不可。这样就能保证数据库的完整性。表结构
43、中还包括ID、宿舍名称、床号、入住时间等字段,其具体的表结构如表3-3所示:表3-3宿舍入住表列名数据类型长度允许空是否主键说明idchar32Not null是主键h_namechar32Not Null否宿舍名称usernamevarchar10Not Null否学号bedvarchar20Not null否床号h_timetime40Not null否入住时间houseInt 32Not null否宿舍号(4)班级表(t_grademanage)主要是记录班级的信息以及新生所分配到的班级,也就是说班级的信息以及新生的分配班级信息都存储于这张表中。作为系统的一项重要功能,一定要有新生的信息
44、才能添加进班级。具体表结构如表3-4所示:表3-4班级表列名数据类型长度允许空是否主键说明idchar32Not null是主键usernamevarchar10Not null否新生g_namechar20Not null否班级名称g_timetime40Not null否班级创建时间g_infochar200Yes否班级简介(5)收费表(t_money)主要是记录收费的情况以及收费原因,让新生能够清晰的了解到收费的缘由,为学校接下来的活动提供便利。并且由于收费必须要准确且要和新生一一对应的不能出现二次收费的现象,所以在建表的时候需要和user表中的用户名即学号相关联。具体表结构如表3-5所
45、示:表3-5收费表列名数据类型长度允许空是否主键说明idchar32Not null是收费编号usernamevarchar10Not null否新生m_namevarchar32Not null否收费名称m_timetime40Not null否收费时间m_numberchar50Not null否收费金额3.5本章小结 在第三章中介绍了系统的功能设计。系统中的每一个模块都是必不可少的,这几个模块既相互独立又在某些方面相互关联。接着介绍了新生报到管理系统的数据库设计,详细的说明了表的成员、表的结构、表之间的相互联系。4 系统主要功能实现4.1 系统前台系统前台主要功能包括个人信息、宿舍查询、
46、分班查询、宿舍入住管理、收费查询四个的功能。前台是系统在使用时第一个出现在人们眼前的东西所以前台必须做的完善,才能给人们留下深刻的印象。为此在登录界面时特意将系统界面颜色作成天蓝色给人一种博大的感觉,给人一种美丽、文静的视觉效果。4.1.1登录界面用户进入系统需要进行登录操作,登录成功后才能进行功能操作,用户登录界面如下,在登录界面中除了正常的用户填写账号和密码以外,为了提高系统的安全性特意添加了一个验证码认证。该页面中所涉及的重要表单元素如下所示:nametype标签参数备注login_formformmethod=post action=“login.action”表单usernamete
47、xtname=“util.s_0”用户名passwordpasswordname=“util.s_1”用户密码logincdtextname=“code”验证码submit_loginsubmitvalue=“登录”登录按钮表4-1 登录页面所涉及的重要表单元素管理员填入账号和密码后,点击“登录”按钮,提交到adminLoginController控制器中,调用loginSave方法检验管理员是否登录成功。若账号和密码两者不匹配会提示登录失败信息并提醒管理员重新登录,若匹配,将账号存储在session里面,且直接进入管理员管理界面。登录界面如图4-1所示: 图4-1 登录界面图 用户在表单里填
48、入用户名和密码后,点击“登录”按钮,提交到LoginAction控制器中,调用loginAction方法检验用户名、用户密码与数据库当中的数据是否匹配。若用户名和密码两者不相匹配,则会提示“登录失败!”;若验证码不匹配,则会提示“验证码错误!”;若均相匹配,则将账号存储在session里面,并直接进入系统主界面。loginAction方法如下所示:public Strincg loginAction() throws Exception Map session = ActionContext.getContext().getSession();String random = (String)
49、session.get(code);if (random != null & random.equals(code) List list = objectManager.getUtil(from User where s_0 = + util.getS_0() + and s_1 = + util.getS_1() + );if (null != list & list.size() 0) util = (User) list.get(0); errMsg = ; return SUCCESS; else errMsg = 登录失败!;return fail; errMsg = 效验码错误!;
50、 return fail; 代码实现的具体流程为:获取session,从session中取出验证码,判断验证码不为空且正确,根据页面传入的用户名和密码查询User表得到list集合,如果集合不为空,拿到这个用户信息,返回success;否则,返回fail,登陆失败,并提示失败信息。 4.1.2个人信息个人信息展示了用户的姓名、出生日期、性别、联系方式、紧急联系人、紧急联系人方式、住址、籍贯等信息.如果新生想修改自己的个人信息仅仅需要点击修改信息按钮进行修改,修改结束后点击提交即可。效果如图4-2所示: 图4-2 个人信息图4.1.3宿舍查询宿舍查询是新生在登录新生报到管理系统之后按自己的需求查
51、询到被分配到的宿舍。新生可以根据宿舍名称、宿舍编号查询已被管理员录入系统的宿舍。因为有的宿舍是在同一天加入系统中,所以特意添加了宿舍编号查询,根据惟一的宿舍编号可以最准确的查询出新生被分配到的宿舍。在查询出宿舍后,新生可以继续查看宿舍的信息。效果如图4-3所示:图4-3 宿舍查询图4.1.4分班查询分班查询可以查询新生的班级和上面的宿舍管理一样也是可以通过查询班级名称和班级简介来显示新生被分配到的班级。但是当新生没有被分配到具体的班级时,系统中无法查询出该生的班级信息。运行效果如图4-4所示:图4-4 分班查询图4.1.5管理员界面示图管理员是系统最关键的人物了,所有的任务的起始点几乎都在管理
52、员身上,所以对管理员界面一定要给特殊设计,为了使管理员在工作时能快速的寻找到需要使用的模块,我将整个系统的导航放在了左侧。且在管理员界面中加了一定的指导语句,为管理员减少工作量。具体运行效果如图4-5所示:图4-5 管理员界面图4.1.6修改密码为了系统的安全,为了保障新生的利益,在新生从管理员处得知自己的帐号时必须要给新生能够修改密码的能力,能够及时、方便、简洁的修改密码这是一个的含有登录能力的系统的必不可少的功能。效果图如4-6所示:图4-6 修改密码界面图 4.2 系统后台系统后台主要功能包括:用户管理、宿舍管理、分班管理、宿舍入住管理、收费管理。下面就每个功能模块进行叙述。当新生来报到
53、的时候管理员需要及时在系统中添加新生的各种信息。在新生报到前管理员可以提前在系统中添加好宿舍,等新生报到的时候能第一时间完成整个系统的流程。4.2.1 用户新增用户管理在管理员的权限下可以新增学生的信息也可以查询新生的信息.且用户名是唯一的,系统中不允许有用户名相同的人存在这也是为了防止有重名的人影响到系统的使用.在录入到系统中的时候管理员需要十分谨慎,虽然系统有修改的选择,但也要减少失误。在填写用户信息时为了方便更好的管理系统,我在增加界面添加了一个选择新加用户权限的功能,这样就可以通过最初预设的admin管理员新添加新的管理员来协助处理新生报到的问题。在新增用户时需注意用户名即学号是唯一的
54、,当添加相同学号时系统会提示失败。运行效果如图4-7所示: 图4-7 用户新增图用户新增后台核心代码,做如下描述:public String saveOrUpdateObject() throws Exception if (null != util & 0 = util.getId() String sql = from User where s_0 = + util.getS_0() + ; /查询数据库已存在的用户名List list = objectManager.getUtil(sql);if (null != list & list.size() 0) errMsg = 该用户名已
55、被使用; / 当用户名已存在时显示添加失败return saveOrUpdate; /返回到新增用户的界面objectManager.saveOrUpdateObject(util);util = null;errMsg = null;return getAllUtil(); 4.2.2 分班管理分班管理模块的前提是有新生已经在系统中注册,因为只有有新生才可以分配班级,在分配班级时要时刻注意新生的选择与是否重复选择新生,在填写班级的简介时可以写上辅导员的名字和联系方式方便学生沟通。在这个分班时为了确保能够按照新生的用户名来安排新生的班级所以在代码中加了语句,使新生的用户名能被查询到。实际效果如
56、图4-8所示:图4-8 新生分班图 分班管理核心代码如下:public String initUtil() throws ExceptionlistUser = objectManager.getUtil(from User);util = null;return saveOrUpdate; /通过objectManager 将User表中的学号放到这个listUser集合中 public String saveOrUpdateObject() throws ExceptionobjectManager.saveOrUpdateObject(util);util = null;errMsg =
57、 null; /保存由grademanage.jsp中表单传出来的班级信息return getAllUtil();4.2.3 班级查询 在将新生分入到不同的班级后,管理员则可以查询出所有的班级,并且新生可以根据从辅导员处了解到的班级信息来查询班级的全部信息。在查询时新生可以选择通过班级简介或者班级名称等不同手段来查询班级。具体效果图如图4-9所示:图4-9 班级查询图 班级查询的核心代码展示:public String getAllUtil() throws Exceptionif (null = pageModel) pageModel = new PageModel();if (0 = p
58、ageModel.getCurrentPageNo() pageModel.setCurrentPageNo(1); /查询前在界面中显示所有已存在的班级信息StringBuilder _sql = new StringBuilder();_sql.append( from HouseManage where 1 = 1 ); if (null != field & field.trim().length() 0) fieldValue = new String(fieldValue.getBytes(iso-8859-1), utf-8);_sql.append( and + field +
59、 like % + fieldValue + %); /设置字体格式及信息,解决乱码,并且使用模糊查询4.2.4 宿舍删除宿舍在添加进系统是没有特殊的要求,所以管理员可以预先在系统中添加很多的宿舍为了加快新生报到。新生到校之后能尽快完成各项手续,这样也会导致会有很多的宿舍添加进系统之后并没有被使用。所以在新生完成报到之后,管理员可以在系统中删除并没有被使用的宿舍。实际运行效果如图4-10所示:图4-10宿舍删除图 宿舍删除核心代码如下所示:public String deleteManyUtil() throws Exception HttpServletRequest request = S
60、ervletActionContext.getRequest(); /获得httpservletrequest对象String ids = request.getParameterValues(id); /将id获得的值放入ids字符串House util = null;for (String id : ids) util = new House();util.setId(Integer.parseInt(id); /批量删除的实现objectManager.deleteObject(util);util = null;return getAllUtil(); /上述完成后返回获取所有宿舍界面
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026动力电池回收利用技术路线选择与再生材料价值评估
- 2026动力电池回收利用商业模式创新研究报告
- 2026动力电池低温性能优化技术路径与市场需求报告
- 2026冷链物流领域制冷技术存储方式食品营养保持分析报告
- 伤口造口失禁的护理创新思维
- 初一英语时态练习题
- 师徒结对师傅总结
- 2026年摄影技巧幼儿园
- 论文《对幼儿园户外体育活动的研究》
- 2026年幼儿园答辩制作
- 清宫寿戏《双福寿》文本考证与演出演变研究
- 企业安全生产总体和年度安全生产目标
- 特殊困难老年人家庭适老化改造工作台账
- 奥林巴斯相机μ-840说明书
- 【中考真题】2024年山东省青岛市中考数学试题(含解析)
- GA/T 2167-2024移民管理机构对外窗口设置规范
- 标准化厂房总体设计方案
- 组合铝合金模板工程技术规程
- DB31∕T 1043-2017 暴雨强度公式与设计雨型标准
- 《土建施工员培训》课件
- 机械识图全套课件
评论
0/150
提交评论