基于ssm篮球场预约系统

摘 要

随着互联网趋势的到来,各行各业都在考虑利用互联网将自己推广出去,最好方式就是建立自己的互联网系统,并对其进行维护和管理。在现实运用中,应用软件的工作规则和开发步骤,采用java技术建设篮球场预约系统。
本毕业设计主要实现集人性化、高效率、便捷等优点于一身的篮球场预约系统。系统通过浏览器与服务器进行通信,实现数据的交互与变更。只需通过一台电脑,动动手指就可以操作系统,实现数据通信管理。整个系统的设计过程都充分考虑了数据的安全、稳定及可靠等问题,而且操作过程简单。本系统通过科学的管理方式、便捷的服务提高了工作效率,减少了数据存储上的错误和遗漏。
本系统选用Windows7作为服务器端的操作系统,开发语言选用java,数据库选用mysql,使用JDBC数据库连接技术,使用eclipse作为系统应用程序的开发工具,Web服务器选用Tomcat7.0版本。
关键词:数据通信;java;Mysql数据库;web服务器

ABSTRACT
With the advent of the Internet, all industries are considering using the Internet to promote themselves. The best way is to establish their own Internet system and maintain and manage it. In the practical application, the working rules and development steps of the application software are used to build the basketball match invitation system in Java technology.
This graduation design mainly realizes the humanized, high efficiency, convenient and other advantages of the basketball competition invitation system. The system communicates with the server through the browser to realize the interaction and change of the data. With a single computer, you can use your fingers to operate the system and achieve data communication management. The design process of the whole system takes into account the safety, stability and reliability of the data, and the operation process is simple. Through scientific management and convenient service, this system improves working efficiency and reduces errors and omissions in data storage.
This system use Windows 7 as a server operating system, choose the Java development language, database selection is essentially, using the JDBC database connection technology, using the myeclipse as the system application development tools, Web server selection Tomcat7.0 version.
KEY WORDS:Data communication; Java; Used to; The web server

目 录

摘 要 I
ABSTRACT 1
目 录 2
第1章 绪论 3
1.1开发背景 3
1.2开发意义 3
1.3论文结构 3
第2章 主要技术和工具介绍 5
2.1 jsp脚本语言 5
2.2 sqlserver数据库 5
2.3 B/S结构 6
2.4 MVC模式 6
2.5 Macromedia Dreamweaver开发工具概述 6
2.6 tomcat服务器概述 6
第3章 系统分析 7
3.1可行性分析 7
3.2需求分析 7
3.3业务流程分析 8
3.4数据流程分析 9
第4章 系统设计 11
4.1整体架构 11
4.2系统结构设计 11
4.3功能模块设计 12
4.4系统安全设计 13
4.5表单字段校验处理设计 13
4.6系统维护设计 13
4.7数据库设计 13
4.7.1数据库设计概述 13
4.7.2概念设计 14
4.7.3逻辑设计 14
4.7.3物理设计 14
第5章 系统实现 19
5.1登录模块的实现 19
5.2系统前台模块的实现 21
5.2.1前台首页的实现 21
5.2.2注册模块的实现 22
5.2.3留言模块的实现 23
5.2.4参加比赛模块的实现 25
5.3后台模块的实现 27
5.3.1用户管理模块的实现 27
5.3.2密码修改模块的实现 29
5.3.3比赛管理模块的实现 30
第6章 系统测试 33
6.1测试目的与定义 33
6.2功能测试 33
6.3测试结果 34
6.4测试评价 34
第7章 总结 35
致 谢 36
参考文献 37

第1章 绪论

1.1开发背景
随着学校的规模不断扩大,学生人数急剧增加,有关学生的篮球赛事信息也成倍增长。面对庞大的信息量,有必要开发篮球场预约系统来提高对篮球场预约的管理工作的效率。通过这样的系统,篮球爱好者都可以做到对信息的规范管理、科学统计和快速查询,从而减少了管理方面的工作量。尤其是在今天数字管理盛行的时代,建立属于自己的实用系统具有深远的意义。
1.2开发意义
现今,信息资源已经成为社会及高校重要的财富和资源。所以,利用大学所学的网页设计工具与数据库相结合,开发一个篮球场预约系统,显得尤为必要。这个系统的设计开发意义在于:一方面它代替了传统的人工管理方式,让信息实现了集中化管理,节省了人力物力,极大提高了比赛效率;另一方面通过这个系统,学校可以很好的展示自己的篮球风采,促进学生交流,扩大影响力。
1.3论文结构
第一章是论文的绪论部分,主要介绍了课题的研究背景以及研究目的和意义。
第二章研究了篮球场预约系统的所采用的开发技术和开发工具。
第三章研究了篮球场预约系统的需求分析,根据系统的特点,分析系统采用的体系结构及开发方法,以及该系统的运行环境,并分析了业务流程,绘制了业务流程以及数据流程。
第四章是对系统的详细设计进行说明。
第五章是系统的具体实现,介绍系统的各个模块的具体实现。
第六章在前几章的基础上对系统进行测试和运行。
最后对系统进行了认真的总结,以此对未来有一个新的展望。

第2章 主要技术和工具介绍

2.1 jsp脚本语言
JSP是一种跨平台的网页技术,最终实现网页的动态效果,与ASP技术类似,都是在HTML中混合一些程序的相关代码,运用语言引擎来执行代码,JSP能够实现与用户的交互,方便用户的使用。
JSP技术具有诸多优点,由于JSP是基于Java的,所以具有了Java的最大优点。可以忽略所使用的平台,实现仅需一次编写就能够到处运行使用,而且还具有很好的安全性和多平台支持的特性,能够在任何平台的任何环境中进行开发,进行系统部署和环境扩展。它也有属于自己的功能强大的开发工具的支持,并且可以通过很多渠道免费得到,这就为JSP技术的传播也准备了条件[5][6]。
与微软公司的ASP技术相比,JSP具有如下优点:
(1)开放的技术:JSP技术基于平台和服务器的相互独立,技术支持来自广泛 的、专门的、各种工具包,有服务器的组件和数据库产品开发商提供。相比之 下,ASP技术主要依赖MICROSOFT支持。
(2)平台和服务器的独立性:JSP编写的代码可运行在任何符合JAVA语法结构的环境中。这样JSP就能够运行在多种WEB服务器上并支持来自多家开发商提供的各种工具包。
(3)开放的开发过程,开放的源码:自1995年以来,SUN用开放过程方法同国际JAVA组织合作开发和修改JAVA技术和规范。
(4)JSP标记可扩充性:JSP技术能够为开发者扩展JSP标记,充分利用与XML兼容的标记技术强大的功能,大大减少对脚本语言的依赖。
(5)JSP跨平台的可重用性:JSP组件(EJB,JavaBean或定制的JSP标记)都是跨平台可重用的。
2.2 Mysql数据库
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。
MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。
与其他的大型数据库例如 Oracle、DB2、SQL Server等相比,MySQL [1] 自有它的不足之处,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于 MySQL是开放源码软件,因此可以大大降低总体拥有成本。

2.3 B/S结构
B/S模式也就是浏览器/服务器模式,它的界面部分是在浏览器端展示,而主要工作是由服务器端进行实现的,用户的请求由浏览器端提交给服务器端进行处理,而服务器将处理结果反馈给浏览器端,在浏览器端界面描画给用户查看。采用B/S模式不仅可以避免用户必须安装专业软件才能开发系统或者访问系统的局限性,而且更加便利。
2.4 MVC模式
MVC是一个框架模式,有三个核心部件,即模型(Model)、视图(View)和控制器(Controller)。模型表示应用程序核心,视图表示显示数据,控制器表示处理输入。它们各自处理自己的任务,将业务逻辑和数据显示分离,便于代码的重用。
2.5 Macromedia Dreamweaver开发工具概述
Dreamweaver功能强大,使得各个层次的开发人员和设计人员都能够快速创建界面吸引人的基于标准的网站和应用程序。从对基于 CSS 的设计的领先支持到手工编码功能,Dreamweaver 提供了专业人员在一个集成、高效的环境中所需的工具。Dreamweaver的特点主要有:卓越的可视环境–简单易用; 所见即所得的强大功能;方便快速的文本编排;专业的HTML编辑–Roundtrip HTML;高质量的HTML生成方式;实时的HTML控制;重复元素库;基于目标浏览器的检测。
2.6 tomcat服务器概述
Tomcat属于著名的Apache工程组下的一个独立项目组jakarta,该项目组和Java领导者Sun公司合作共同致力于Servlet/JSP服务技术的开发。虽然目前Tomcat不是性能最好的Servlet/JSP 服务器,但是由于它的开发者具有深厚的技术背景,加上该项目本身非常活跃。同时Tomcat属于开放源代码项目产品,可以使我们有机会更深入的了解和使用。

第3章 系统分析

3.1可行性分析
本次毕业设计基于B/S 模式下,运用Java、JSP技术采用的是sqlserver数据库和MyEclipse实现,总体的可行性共分为以下三个方面。
3.1.1技术可行性
采用的是当下流行的JAVA语言,JSP技术,它具有如下优点。强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。JSP可以使用成熟的JAVA BEANS 组件来实现复杂功能。
3.1.2经济可行性
篮球场预约系统采用的插件都是开源免费的,开发工具,myeclipse,以及数据库是sqlserver皆是开源免费的,服务器采用tomcat,也是当下流行的开发所用的服务器,因为都是开源免费的,所以在开发前期,开发时用于项目的经费将会大大降低,不会让开发该软件在项目启动期受到经费的影响,所以经济上还是可行的。尽量用最少的花费去满足用户的需求。省下经费用于人工费,以及设备费用。将在无纸化,高效率的道路上越走越远。
3.1.3操作可行性
本系统实现功能的操作很简单,普通电脑的常见配置就可以运行本软件,并且只要粗通电脑使用的基本常识就可以流畅的使用本软件。电脑具备连接互联网的能力,并且可以正常访问系统,并不需要操作者有什么高超的能力,只需了解业务流程,并且按照专业知识进行正确操作即可,所以篮球场预约系统具备操作可行性。
3.2需求分析
一个系统的开发至关重要的一点就在于对需求的分析。在研究调查的基础之上,对所开发的系统功能进行的详细分析总结,从而设计出完整的系统并将其实现。用户和开发人员的交流分析,使其达到最佳理解程度,使系统功能达到最佳。
下面分别简单阐述一下这几个功能模块需求。
表3-1功能需求表
编号 功能名称 功能描述

  1. 用户登录 前台登录:保证用户通过身份验证进入系统前台进行操作
    后台登录:仅管理员能够登录后台
  2. 用户注册 对注册用户进行检测,信息通过检测之后成为本系统的用户
  3. 站内搜索 用户可以通过标题和类别搜索站内信息
  4. 用户管理 查看修改删除用户数据
  5. 篮球场地管理 查看新增修改删除篮球场地数据
  6. 预约审核管理
  7. 取消申请管理
  8. 通过记录管理
  9. 拒绝预约管理
    3.3业务流程分析
    业务流程图是一种物理模型,它描述系统内部各单位与人员之间的业务关系和管理信息的流向。
    系统的业务流程如下图所示。
    在这里插入图片描述

图3-2系统业务流程图
3.4数据流程分析
数据流图是描述体系的逻辑模型,图中没有任何具体的物理元素。可行性研究的要求给出数据的高层逻辑关系,描述数据在系统中流动和处理的情况,表达出对新系统的设想。
零层数据流程是流程中最抽象的一层,它包括了注册与登录管理、用户功能管理和检索维护管理等功能模块,在登录注册模块使用到的数据存储有用户账户信息文档、用户信息文档,用户功能管理模块需要的存储是用户动态信息文档、留言信息文档、图片信息文档,检索维护是通过以上这些文档信息通过关键词进行搜索。
系统的0层数据流图如下图所示。
在这里插入图片描述

图3-4系统数据流图(0层)
一层数据流程图是对零层数据流程图的细化,将登录与注册细分为填制登录注册信息和完善信息,用户功能管理细分为用户基本功能管理和用户特色功能管理。
系统的1层数据流图如下图所示。
在这里插入图片描述

图3-5系统数据流图(1层)
二层数据流程是对一层数据流层图中填写登录注册信息、用户基本功能和用户特色功能的细化。即:填写登录注册信息细化为填制信息、后台审核,用户基本功能细化为参加比赛、个人资料管理、比赛发布、已发布比赛查询、参赛人员查询、个人参赛查询操作。
系统的2层数据流图如下图所示。
在这里插入图片描述

图3-6系统数据流图(2层)

第4章 系统设计

4.1整体架构
系统整体采用分层架构,分层就是要把界面部分、业务逻辑部分、数据库访问部分的代码放在各自独立的方法或类中编写,减少代码之间的联系,分层设计思想已经已经成为开发软件的主流思想。
本系统的最大的优势不仅在于减少重复编程的工作量,缩短开发周期和降低成本,同时还是系统架构更加清晰合理,程序运行更加稳定可靠,遵循了MVC架构模式,采用分层设计,把系统分为表示层、业务层和持久层。表示层是系统与用户直接交互的层面,实现web前端界面和页面之间的跳转,该层使用业务层提供的现成服务来满足用户需求,这一层只需要编写JSP和ACTION的代码,实现页面的跳转功能,利用CSS,JavaScript脚本和html以及jsp标签设计页面的前端界面。业务层由一个个Service构成,每个Service作为一个程序的特定模块完成应用功能,Service层之间相互独立,Service层调用DAO层的方法对后台数据库执行操作,把数据库中的数据传递到JSP页面显示给用户。持久层屏蔽底层数据库的连接,为业务层Service提供一个简洁、统一、面向对象的数据访问接口,各层之间传递参数值时以对象的方式进行传递,大大简化了代码的可读性,同时操作数据库也已对象的形式存取数据库,可以减少重复代码的编写。
其构建图如下图所示。
在这里插入图片描述

图5-1整体架构
4.2系统结构设计
本系统使用的角色主要有系统管理员、注册用户,本系统分为系统前台和系统后台,首先在系统前台,游客用户可以经过账号注册,管理员审核通过后,用账号密码登录系统前台,查看篮球比赛信息、用户风彩、留言信息等栏目信息,进行在线留言、参加比赛,在前台用户可以通过标题和类别进行前台信息的搜索,注册用户可以登录个人中心进行个人资料管理、比赛发布、已发布比赛查询、参赛人员查询、个人参赛查询等功能。
后台主要由管理员使用,以管理员的身份在登录页面输入账号和密码,经过数据库身份验证,验证成功后登录系统主页,可以使用系统用户管理(系统用户录入、删除、修改、登录密码修改)、学生用户管理(学生用户审核、查询)、比赛时段管理(比赛时段录入、删除、修改)、比赛管理、系统管理(数据备份、友情链接管理、系统简介设置、系统公告设置)等功能操作。同时管理员可以通过关键字搜索可以搜索相应的信息,打印各种详细信息,导出各类信息列表至excel中。
系统的功能结构图如下图所示。
在这里插入图片描述

图4-1系统功能结构图
4.3功能模块设计
1.用户管理模块:
该模块包括注册用户管理和系统用户管理,系统用户主要是普通管理员,对用户信息进行管理,只有注册用户才可在该系统上进行相应的操作。用户对个人信息可进行修改;管理员可对自己的个人信息进行维护,同时可对用户的密码信息进行修改,也可删除系统中的用户。
2.比赛信息管理模块
管理员管理系统的比赛信息,也可以修改系统中已有的比赛信息,同时可看比赛信息和搜索比赛信息;而用户只能查看比赛信息和搜索比赛信息。
3.参加比赛模块
用户查询比赛信息,选择比赛进入该比赛的详细页面,点击参加按钮,填写参加表单,添加参加记录。
4.参加管理模块
用户参加比赛模块主要实现的是对比赛的参加功能,同时可查看自己的参加记录,并对参加可进行取消参加操作。管理员登录系统后,可查看用户的参加信息,也可搜索参加信息,同时可对参加信息进行确认或删除的操作。
5.留言信息管理模块
用户登录系统后,可在留言板进行留言,管理员在后台可以查看或搜索留言信息,同时可回复或删除留言信息。
6.系统管理模块
系统管理模块供管理员使用,只要是一些系统信息的管理,包括系统简介设置、系统公告设置、友情链接的管理、数据备份等。
4.4系统安全设计
篮球场预约系统才为了防止被暴力登录,设置了登录验证码功能。除此之外,为了保证数据的安全性,用户密码被加密后存入系统数据库中,此外数据库采用的是sqlserver相对稳定,数据通过人工备份的方式进行定期备份。系统整体上数据业务逻辑前台页面做到了很好的分离,这也是能够相对保证安全。
4.5表单字段校验处理设计
1.出错信息类型
出错信息类型包括:
A 未输入必填项;
B 应输入合法字符或数字却输入非法字符或数字;
C 对空数据表进行更改或删除操作;
D 向要求唯一值的关键字段添加重复值。
2.出错处理对策
对于错误A,系统要求用户输入非空值。
对于错误B,系统要求用户输入合法字符。
对于错误C,系统提示数据表无记录可更改或删除。
对于错误D,系统要求用户输入非重复值。
4.6系统维护设计
篮球场预约系统是个现代化的高度集成的综合信息系统,系统主要服务对象为用户,最大化在页面中提供多的信息,因此在系统维护上,数据量较大,整体的维护设计如下:
(1)代码的维护:部署在云服务器上或本地服务器,通过SVN或FTP保持版本更新迭代。
(2)功能增加:功能升级在必要的前提下。
(3)数据维护:根据安全性等需求,定期对数据库进行人工备份。
4.7数据库设计
4.7.1数据库设计概述
数据库的设计在整个系统开发的过程中扮演者关键的角色,前期考虑不全面修改数据库有可能整个系统都要重新开发,所以数据库的设计不容忽视。数据库具有完整性和一致性,并且数据库的响应速度非常的快。在篮球场预约系统中,设计数据库表的各个字段,确定表和表之间的关联关系,在后期的开发中尽量减少改动数据库,提高开发效率。
4.7.2概念设计
数据库的前期设计最关键的步骤是概念结构的设计,是数据模型的概念信息。将需求分析抽象为信息世界的结构,才能更好更准确的使用数据库管理系统。其设计具有以下两点优势:
(1)能够体现事物之间的关联关,满足用户对数据的处理要求。
(2)易于理解、更改,用户的积极参与是数据库设计成功的关键。
(3)描述概念模型最有力的工具就是E-R模型,使用E-R图可以清楚的指导各实体之间的联系,它有三个关键的元素,即实体、属性和联系。
在这里插入图片描述

图4-10系统总体ER图
4.7.3逻辑设计
数据库的概念模型转换成逻辑模型又称逻辑设计,通俗的讲就是实体图转化成以关系模式、层次模式表现出来的形式。篮球场预约系统的数据库逻辑结构如下。
管理员用户信息(序号、用户名、密码、权限、添加时间)
普通用户信息(序号、账号、密码、姓名、性别、地区、手机、Email、照片、添加时间)
留言信息(序号、账号、照片、姓名、留言、回复、添加时间)
比赛信息(比赛编号、比赛日期、比赛时间、比赛模式、参赛人数、比赛人数、比赛地点、发起人)
参赛信息(比赛编号、比赛日期、比赛时间、比赛模式、参赛人数、比赛人数、比赛地点、发起人、学生编号、姓名、班级、添加时间)
4.7.3物理设计
数据库的物理结构设计,就是在数据库中创建表设置表的属性和大小等等,建立表和表之间的关联关系。本系统所使用的部分数据表结构如下。
allusers表:
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 自增编号 10
2 username VarChar 50 是 255
3 pwd VarChar 50 是 255
4 cx VarChar 50 是 255
5 addtime DateTime 8 是 23

bisaishijianduan表:
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 自增编号 10
2 bisaishijian VarChar 50 是 255
3 addtime DateTime 8 是 23

cansaixinxi表:
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 自增编号 10
2 bisaibianhao VarChar 50 是 255
3 bisairiqi VarChar 50 是 255
4 bisaishijian VarChar 50 是 255
5 bisaimoshi VarChar 50 是 255
6 cansairenshu VarChar 50 是 255
7 bisairenshu VarChar 50 是 255
8 bisaididian VarChar 50 是 255
9 faqiren VarChar 50 是 255
10 xueshengbianhao VarChar 50 是 255
11 xingming VarChar 50 是 255
12 banji VarChar 50 是 255
13 addtime DateTime 8 是 23

dx表:
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 自增编号 10
2 leibie VarChar 50 是 255
3 content Text 16 是 255

lanqiubisaixinxi表:
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 自增编号 10
2 bisaibianhao VarChar 50 是 255
3 bisairiqi VarChar 50 是 255
4 bisaishijian VarChar 50 是 255
5 bisaimoshi VarChar 50 是 255
6 cansairenshu VarChar 50 是 255
7 bisairenshu VarChar 50 是 255
8 bisaididian VarChar 300 是 255
9 faqiren VarChar 50 是 255
10 addtime DateTime 8 是 23

liuyanban表:
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 自增编号 10
2 cheng VarChar 50 是 255
3 xingbie VarChar 2 是 255
4 QQ VarChar 50 是 255
5 youxiang VarChar 50 是 255
6 dianhua VarChar 50 是 255
7 neirong VarChar 500 是 255
8 addtime DateTime 8 是 23
9 huifuneirong VarChar 500 是 255

xinwentongzhi表:
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 自增编号 10
2 biaoti VarChar 300 是 255
3 leibie VarChar 50 是 255
4 neirong Text 16 是 255
5 tianjiaren VarChar 50 是 255
6 shouyetupian VarChar 50 是 255
7 dianjilv Int 4 是 10
8 addtime DateTime 8 是 23

xueshengxinxi表:
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 自增编号 10
2 xueshengbianhao VarChar 50 是 255
3 xingming VarChar 50 是 255
4 xingbie VarChar 50 是 255
5 mima VarChar 50 是 255
6 banji VarChar 50 是 255
7 weixin VarChar 50 是 255
8 youxiang VarChar 50 是 255
9 shoujihaoma VarChar 50 是 255
10 zhaopian VarChar 50 是 255
11 beizhu VarChar 500 是 255
12 issh VarChar 2 是 255
13 addtime DateTime 8 是 23

yonghuzhuce表:
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 自增编号 10
2 yonghuming VarChar 50 是 255
3 mima VarChar 50 是 255
4 xingming VarChar 50 是 255
5 xingbie VarChar 2 是 255
6 chushengnianyue VarChar 50 是 255
7 QQ VarChar 50 是 255
8 youxiang VarChar 50 是 255
9 dianhua VarChar 50 是 255
10 shenfenzheng VarChar 50 是 255
11 touxiang VarChar 50 是 255
12 dizhi VarChar 300 是 255
13 beizhu VarChar 500 是 255
14 addtime DateTime 8 是 23
15 issh VarChar 2 是 255

youqinglianjie表:
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 自增编号 10
2 wangzhanmingcheng VarChar 50 是 255
3 wangzhi VarChar 50 是 255
4 addtime DateTime 8 是 23

第5章 系统实现

根据用户的需求分析设计系统的整体功能,系统实现主要介绍本系统如何实现功能的过程。
5.1登录模块的实现
系统的登录窗口是用户的入口,用户只有在登录成功后才可以进入访问。通过在登录提交表单,后台处理判断是否为合法用户,进行页面跳转,进入系统中去。
登录合法性判断过程:用户输入账号和密码后,系统首先确定输入输入数据合法性,其不能为空,然后调用数据库查找alluser表中数据,进行匹配查看此账号是否存在和密码是否正确。
在主页中切入登录窗口页面,调用设计好的CSS、JS和IMAGES等文件对页面进行整体设计,创建表单,在login.jsp页面发送登录请求,调用src下的mainctrl类的dopost方法来验证。当系统判定账号密码都正确,系统会跳转到系统的首页。
用户登录模块的IPO如下所示:
输入:用户名和密码。
处理:
1)检验用户是否满足输入的要求,即检验用户名和密码文本框是否为空,若为空,则提示用户输入用户名和密码。
2)检验是否存在用户输入的用户名,并且密码是否正确。
3)从数据库中提取记录,并储存在本地的session中(timeout默认=30min)。
4)根据用户名,将其显示在系统首页上。
5)关闭窗口。
输出:是否成功的信息。
登录流程图如下所示。
在这里插入图片描述

图5-1登录流程图
系统后台登录界面如下所示。
在这里插入图片描述

图5-2系统前台登录
5.2系统首页模块的实现
5.2.1首页的实现
本系统的首页使用多个jsp页面组成,通过设置页面的长度和高度限制显示区域的大小,整个系统首页以图片为背景。在一个jsp页面中,使用css指定字体大小和字体类型以及其位置,水平排列菜单栏,通过设置超链接的样式去掉下划线和鼠标移动到该选项时变颜色等等,编写javascript脚本在导航栏显示系统的当前日期,首先定义一个数组d存放周一至周日,创建一个获取时间的对象time后通过该对象的方法获取年月日,(time.getDay())%7计算得到的结果是数组的下标,通过数组下标就获取了数组的值,利用字符窜连接把年月日和星期转换成字符窜,通过document.getElementById(“date”)获取标签后使用innerHTML把该字符窜显示在jsp页面。利用<jsp:include ></jsp:include>标签包含设计好的头部和左边部分的网页。
如下图所示为系统的前台首页界面。
在这里插入图片描述

图5-4前台首页
5.2.2注册模块的实现
该功能实现了用户注册信息功能,用户按照页面上的提示填写用户名、密码、联系方式、联系地址等用户信息,其中填写的用户名不能重复即可注册,通过业务层保存到用户信息表中,无论是否注册成功,在注册页面上都给出提示信息(如注册成功)。
用户注册流程图如下所示。
在这里插入图片描述

图5-5用户注册流程图
用户注册界面如下图所示。
在这里插入图片描述

图5-6用户注册

5.3管理员模块的实现
5.3.1用户管理模块的实现
用户管理,管理员在用户管理页面中可以通过查看用户名、姓名、性别、手机、邮箱等内容进行详情、修改、删除,如图所示。
系统用户管理界面如下图所示。
在这里插入图片描述

图5-15系统用户管理

5.3.2密码修改模块的实现
修改用户密码是将用户的原密码用新密码替换,用户在原密码输入正确的情况下,更新用户信息表中的密码以及确认密码字段,密码修改成功之后页面跳转到密码修改界面,下次登录使用新密码。
密码修改流程图如下所示。
在这里插入图片描述

图5-16密码修改流程图
密码修改界面如图所示。
在这里插入图片描述

图5-17修改密码
5.3.3篮球场地管理模块的实现

篮球场地管理,管理员在篮球场地管理页面中可以通过查看场地编号、场地面积、可约时间、场地状态、等一些基本信息的添加、删除和修改。
篮球场地管理流程图如下所示。
在这里插入图片描述

图5-21篮球场地管理流程图
篮球场地添加如下图所示:
在这里插入图片描述

图5-22比赛添加
篮球场地界面如下图所示:
在这里插入图片描述

图5-23篮球场地界面

5.3.3预约审核管理模块的实现

5.3.3取消申请管理模块的实现

5.3.3通过记录管理模块的实现

5.3.3拒绝预约管理模块的实现

5.3用户模块的实现

5.3.3篮球场地管理模块的实现

5.3.3预约审核管理模块的实现

5.3.3取消申请管理模块的实现

5.3.3通过记录管理模块的实现

5.3.3拒绝预约管理模块的实现

个人模块的实现

第6章 系统测试

软件测试的对该系统起着十分重要的作用,同时也大大影响着软件的可靠性。软件测试的目的就是及时发现软件中的问题,然后对此进行迭代修改,以保证软件可以完美运行,实现预期的功能。
6.1测试目的与定义
在对该系统进行完详细设计和编码之后,就要对篮球场预约系统的程序进行测试,检测程序是否运行无误,反复进行测试和修改,使之最后成为完整的软件,满足用户的需求,实现预期的功能。
6.2功能测试
功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项检测,检查产品是否达到用户要求的功能。下面列出的测试用例是基于需求分析阶段的用例描述而进行的设计。
下面将通过表格的形式介绍针对本系统每个功能模块所进行的功能测试。
测试用例 方案 输入数据 预期结果 测试结果
用户注册 使用未存在的用户名和完整的数据注册账号密码 用户名:zcyh
密码:zcyh
确认密码:zcyh 系统提示注册成功 与预期结果一致
使用已存在的用户名和完整的数据注册账号密码 用户名:zcyh
密码:zcyh
确认密码:zcyh 系统提示注册失败,该用户名已存在 与预期结果一致
使用未存在的用户名和完整的数据注册账号密码,但是确认密码不一致 用户名:zcyh
密码:zcyh
确认密码:zcyh1 系统提示注册失败,输入的两次密码不一致 与预期结果一致
用户登录 使用已存在的用户名和相匹配的密码、验证码登录系统 用户名:zcyh
密码:zcyh
验证码:6066 系统提示登录成功,并跳转至系统主页 与预期结果一致
使用已存在的用户名和不匹配的密码、正确的验证码登录系统 用户名:zcyh
密码:zcyh123
验证码:6066 系统提示登录失败,密码错误 与预期结果一致
使用已存在的用户名和相匹配的密码、不正确验证码登录系统 用户名:zcyh
密码:zcyh
验证码:6061 系统提示登录失败,验证码错误 与预期结果一致
密码修改 用户登录系统后,使用原始密码和两次一致新密码修改当前的登录密码 原始密码:zcyh
新密码:zcyh1
确认新密码:zcyh1 系统提示修改密码成功 与预期结果一致
原始密码输入错误,两次新密码一致 原始密码:zcyh2
新密码:zcyh1
确认新密码:zcyh1 系统提示修改密码失败,原始密码错误 与预期结果一致
原始密码输入正确,两次新密码不一致 原始密码:zcyh
新密码:zcyh1
确认新密码:zcyh2 系统提示修改密码失败,两次新密码不一致 与预期结果一致
在线留言 用户已登录,打开留言界面,输入留言标题、内容等信息 留言标题:你好
留言内容:谢谢 系统提示留言成功,并显示新的留言信息 与预期结果一致
用户已登录,打开留言界面,用户未输入留言标题和内容 留言标题:
留言内容: 系统提示留言失败,内容不能为空 与预期结果一致
比赛管理 用户已登录,打开比赛添加界面,输入比赛模式、人数等信息 比赛模式:wernziihu
比赛人数:2 系统提示比赛添加成功,新比赛成功显示 与预期结果一致
用户已登录,打开比赛添加界面,用户未输入比赛模式和人数 比赛模式:
比赛人数: 系统提示比赛添加失败 与预期结果一致
6.3测试结果
测试完成后,系统总体上已经完成了预期的所有功能,满足了任务书中的各项要求,该系统操作简便,界面简洁,安全性高,对用户来说无疑是一款非常实用的篮球场预约系统。
6.4测试评价
软件基本达到设计要求,功能完整,操作简便,界面简洁,安全可靠,错误处理正确,且能在出错时提示出相对应的错误种类,然而同时在测试中也发现了软件的一些不足。比如,该系统在用户的数据量达到上万条时,页面操作会有微小的卡顿,等等一些缺陷,这些需要在软件之后的进一步修改和维护时进行修改。

第7章 总结

在这次毕业设计中,本人发现在生活和工作中,移动网络和数据库应用隐藏着巨大的潜力。在学校的几年的研究中,本人完全进入计算机网络的知识中,使用自己的专业知识将把所有困难终都会被解决的。
此时项目已经完成,即使实施的时间不是很长,但是这个过程中需要准备很长的一段时间去对系统设计开发所实际到的技术进行学习。在设计过程中,遇到技术上的困难,主要通过找专业的系统和论坛来解决这些问题,对于圆满完成本人的毕业设计,它们也贡献了很大一部分力量。
通过篮球场预约系统的开发,本人巩固了之前学过的知识,平时所学到的知识不仅融合了,还获得了许多其他学科上知识,本人深深体会到学科之间的关联效应。为了完成毕业设计,做了很多的准备,首先,在数据库系统的设计过程中,尤其是在数据库的工作原理、工作特点,对其深刻的讨论,与此同时,对于小型站点来说,最好服务器的选择,其次,利用所学的知识点分析所做的系统,并在此基础上设计。
回顾过去做毕业设计的整个过程,充满了付出和收获,虽然经历了种种困难,不断修改,不断探索,但是还有不足的地方,在未来的时间,本人将继续学习相关的知识,更详细的了解系统相关的实际情况,弥补系统缺陷,更能发挥系统的优势。

致 谢

紧张而忙碌的毕业设计终于完成了,看到自己设计出来的系统功能齐全,感到自豪和激动。在毕业时,很多老师,同学和朋友给了我无私的关怀和帮助,我想表达自己诚挚的谢意。
毕业设计帮助了我学习到了更多的知识。可以说,使用计算机来解决管理过中的任务繁重、效率低下问题是一个不错的方式。在这个项目中完成的时候,我曾经遇到了各方面的困难。不过,在困难的过程中大大提高了我解决问题的能力,让我更好的理论知识和实践技能相结合,提高专业技能。从毕业设计的开题到结束的这段时间内,我终于做出了一个更完整,全面的系统。
首先要感谢我的指导老师,谢谢她在设计和论文中给我的指导。在老师的细心指导下我才能快速的掌握系统的相关功能,在老师的大力帮助下我才能将课本上的知识与自己的项目结合真正的做到学以致用。也感谢老师经常牺牲自己的休息时间利用其丰富的教学和项目经验对我进行指导。没有老师对我程序及论文的指导,我的系统也不会这么顺利的完成。同时,在老师严格的要求下,让我按时完成老师的任务,课堂上,老师不仅教我们如何学习,教我们新的知识,同时教会我很多的道理。
随着毕业设计的完成,我真正了解软件的开发和设计,以前的理论知识巩固的全过程,同时也奠定了良好的基础我在今后的工作中。

参考文献

[1] [美]Martin Fowler.徐家福译《UML精粹:标准对象语言简明指南》[M],北京:清华大学出版社,2005.3,26-32
[2] [美]Timothy Budd著.三联四方工作室译《面向对象Java编程思想》[M],北京:清华大学出版社,2002.8, 132-146
[3] [美]Way S. Horstmann等著.李如豹,刚冬梅,张雪莲等译.《最新Java2核心技术卷工:原理》[M].北京:机械工业出版社,2002.2,201-210
[4] [美]2 Scott Oaks著.林琪译.(Java TM安全第二版) [M],北京:中国电力出版社,2002.4,50-86
[5] [美]George Reese著.石永薪,宋隆译.《JDBC与Java数据库编程》[M]北京:中国电力出版社,2002.3.20-86
[6] 王宝华.王宝石,《人力资源管理》[J].北京:机械工业出版社,2004.8,42-56
[7] 姜承尧著.《MySQL高效编程》[J].北京:机械工业出版社,2012,56-72
[8] 张海帆著,软件工程导论(第5版).北京:清华大学出版社,2008.3,60-97
[9] [美]Writen by Steve McConnell,Rapid Development: Taming Wild Software Schedules[J], Microsoft Press , 2008-7-11,324-403
[10] Donald Knuth , The Art of Computer Programming[J].北京:清华大学出版社,2002(9),24-90
[11] Writen by Eric A.Smith,Java Server Pages[J].北京:电子工业出版社,2000,36-75
[12] Writen by Kimberly C.Ward.Korey Manley.Richard Keen.Jennifer Kelly;Anne W. Lipe;Jane Clemmer , The effects of an arts intervention program in a community mental health setting[J]: A collaborative approach The Arts in psychotherapy,2012,25-20
[13] 潘亮著. 《基于ASP.NET的篮球场预约系统的设计与实现》[D]云南:中国科学技术信息研究所,2009.11, 12-32
[14] 袁龙如著. 《基于PDM的新闻管理集系统设计与开发》[D]北京:国防科技大学,2005.09, 11-20
[15] 潘成均著. 《篮球场预约系统》[D]四川:内江师范学院学报,2010, 1-3
[16] 胡强著. 《篮球场预约系统的设计》[D]南昌:科协论坛:下半月,2010,54-55
[18] 胡湘娟. 《篮球场预约系统》[D]湖南:科技创新导报:下半月,2009.34期, 208-208
[19] 姜俊卿;刘波;. 《基于B/S的学生信息管理系统的设计与实现》[J]江西:大观周刊:下半月,2011, 104-109
[20] 姜俊卿;刘波;. 《基于WEB的篮球场预约系统开发与实现》[J]江西:华章:下半月,2011.010期, 109-109

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_1406299528

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值