基于java+JSP+J2EE的城市公交查询系统设计与实现(毕业论文+程序源码)

大家好,今天给大家介绍基于java+JSP+J2EE的城市公交查询系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。

文章目录:

  • 基于java+JSP+J2EE的城市公交查询系统设计与实现(毕业论文+程序源码)
    • 1、项目简介
    • 2、资源详情
    • 3、关键词:
    • 4、毕设简介
    • 5、资源下载

1、项目简介

  1. 该系统顺应了时代发展且具有以下优点:首先,方便乘客的出行,乘客不用询问站牌工作人员如何倒车,便可到达目的地。其次,乘客在网上就可以查询到公交公司发布的路况信息,以便提早做好换乘准备节约出行时间。最后,本系统可以节约人力资源,以往的站牌附近要安排公交公司的工作人员来帮助不熟悉的乘客,有了公交查询系统提前上网查询便可知道。

2、资源详情

项目难度:中等难度
适用场景:相关题目的毕业设计
配套论文字数:33748个字60页
包含内容:整套源码+完整毕业论文+答辩PPT+任务书+辅导视频


3、关键词:

B/S架构;JAVA;Mysql;JSP


4、毕设简介

提示:以下为毕业论文的简略介绍,项目源码及完整毕业论文下载地址见文末。

1 绪论
1.1 选题背景
省略

1.2 国内外发展状况
省略

1.3 选题的目的
省略

1.4 研究手段及意义
1.研究方法:
本研究课题设计的公交查询系统客户端模块,主要工作有:
(1)亲身体验了解客户需求,进行相关的需求分析。
(2)根据需求分析和设计的本系统的框架。
(3)根据框架结构的设计,制结构图。
(4)编写相关的开发技术文档。
(5)编写代码。
(6)对系统进行单元测试。

2.技术路线:
本文涉及的系统基于B/S(Browser/server,浏览器/服务器),该模式采用了多种技术,在所有平台下都能顺畅地运行。
3.意义:
省略

2 相关技术简介
2.1 Jsp技术介绍
JSP全称Java Server Pages,是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头以%>结束。 JSP是一种Java servlet,主要用来运行Java web的使用者界面。开发者通过使用HTML代码、XHTML代码、XML元素和嵌入JSP操作编写JSP。JSP技术使用web表单得到用户自定义数据、通过数据库和其他数据库资源,接着动态地建立网页。JSP标签有各种各样的功能,像访问数据库、记载用户采取的信息、造访JavaBeans组件等,不仅如此在各种网页中对信息的传达和共用。

JSP程序通过Java的编程语言,对动态网页进行封装。根据tags和scriptlets,网页对存在于服务端的资源的应用逻辑的造访也是可以的。JSP将网页逻辑与网页设计和显示分隔开,对可重新利用的基于组件的设计进行支持,更易于对基于Web的应用程序进行开发。

JSP以及Servlet ,在服务器上运行的,一般将运行后的html文本返送给客户端,仅仅在客户端的浏览器就能显示。先运行调用JSP页面的代码,然后在Web服务器送回的JSP文件的结果中碰到的HTML代码送回到客户端。Java程序段来运行数据库,重定向页面可以插入页面和动态页面的功能需要被新建。运用标记和编程语言技术形成动态生成的网页时,将形成逻辑处理包。
Java Servlet 是JSP的技术根本,并且很多的Web应用程序的设计都要有Java Servlet和JSP的共同合作。JSP简单易用,完全的面向对象,不仅平台无关性还有安全可靠,这些都是继承了java技术。

省略

2.2 MyEclipse简介
MyEclipse是基于Eclipse进行插件合成,最终形成功能强大的开发软件。目前主要用于JAVA,JAVAEE的开发,也可以用于移动应用的开发,其主要特点是功能强大,应用广泛,并且支持很多开源的产品,应用前景非常广发。

省略

2.3 数据库技术
省略

2.3.1 数据库的体系结构
省略

2.3.2 数据库管理系统(DBMS)
省略

2.3.3 Mysql数据库
MySQL是最流行的开放源码SQL数据库管理系统,它是由MySQL AB公司开发、发布并支持的。MySQL AB是由多名MySQL开发人创办的一家商业公司。它是一家第二代开放源码公司,结合了开放源码价值取向、方法和成功的商业模型。

省略

该数据库是数据和数据库对象的集合,包括表数据库对象是指(表) ,视图(View ),存储过程(存储过程)和触发(触发)等。

数据库通过SQL(Structured Query Language)来对数据进行操作和管理,这里包括一些基本的操作如select、delete、insert、update语句。ADO ( ActiveX数据对象)是微软的数据库应用程序开发和数据库访问技术。数据库访问接口,来自不同数据源的数据。 ADO封装了很多的程序中使用的OLE DB访问接口的COM接口,它是技术的高级别访问。在数据库管理系统和接口如图2-1所示的原则。 MySQL是一个小型关系型数据库管理系统,它的快速,多线程,多用户。可以与网页文件一起方便地放在网站的目录中的MySQL数据库文件,正是由于此类特点,网站开发的数据库支持技术通常采用MySQL数据库。使用图形化的管理工具的数据库管理。

JSP MyAdmin是一个用JSP编写的、基于Web的、跨平台的MySQL管理程序,支持简体中文,使用Web浏览器作为管理界面。通过JSPMyAdmin可以进行绝大部分的MySQL操作,包括对数据库级操作,表级操作,以及数据管理等。

图2-1 数据库管理系统和接口的原理

2.3.4 MySQL特点特性
(1)可以处理拥有上千万条记录的大型数据
(2)支持常见的SQL语句规范
(3)可移植行高,安装简单小巧
(4)良好的运行效率,有丰富信息的网络支持
(5)调试、管理,优化简单(相对其他大型数据库)
(6)支持多种操作系统,这意味着在一个操作系统中实现的应用可以很方便地移植到其他的操作系统下。
(7)MySQL的核心采用完全的多线程编程
(8)算法优化查询SQL,切实提高搜索速度。

2.3.5 MySQL数据库应用环境
相对于其他主要数据库如Oracle,DB2,SQL Server,MySQL有自己的缺点,如,如有限MySQL集群,是一个相对贫穷的效率,但它并没有降低它的声誉。一般的个人消费者和中小型企业,非常的适用MySQL数据库,不仅因为其实一个开源的软件而且体积小、速度快、总体拥有成本低,这也是使用者考虑的范畴之一。

2.4 JAVA概述
Java非常适合于企业网络和Internet环境,现在已成为Internet中最受欢迎、最有影响的编程语言之一。面向对象主要有四大特性:封装、抽象、继承和多态。
封装:在面向对象语言中,封装特性是由类来体现的,我们将现实生活中的一类实体定义成类,其中包括属性和行为(在Java中就是方法),就好像人类,可以具有name,sex,age等属性,同时也具有eat(),sleep()等行为,我们在行为中实现一定的功能,也可操作属性,这是面向对象的封装特性;

抽象:抽象就是将一类实体的共同特性抽象出来,封装在一个抽象类中,所以抽象在面向对象语言是由抽象类来体现的。比如鸟就是一个抽象实体,因为抽象实体并不是一个真正的对象,它的属性还不能完全描述一个对象,所以在语言中体现为抽象类不能实例化;

继承:继承就像是我们现实生活中的父子关系,儿子可以遗传父亲的一些特性,在面向对象语言中,就是一个类可以继承另一个类的一些特性,从而可以代码重用,其实继承体现的是is-a关系,父类同子类在本质上还是一类实体。
多态:多态就是通过传递给父类对象引用不同的子类对象从而表现出不同的行为,多态可为程序提供更好的可扩展性,同样也可以代码重用。

2.5 J2EE技术
J2EE 技术,即Java 2平台企业版(Java 2 Platform Enterprise Edition),是一种B/S模式的体系结构,是利用 Java技术简化企业应用系统开发、管理和部署等复杂问题的一套完整的体系结构。该技术由SUN公司推出,基于Java 2平台,它继承了Java语言方便、灵活、跨平台等优势,还提供了对EJB(Enterprise Java Bean)、Java Servlets、JSP(Java Server Pagers)、XML 、API等技术的支持,从而即降低了开发多层应用系统的难度和复杂性,又提供了对现有应用系统的强大支持。

J2EE技术一般分为四个层级:客户层、WEB表示层、业务逻辑层、数据层(EIS)。如下图2-2所示。

图2-2 J2EE层次结构图
客户层:可以包括瘦客户端、胖客户端,用户可以与该层进行交互作用,是系统的用户界面,可以呈现出适当的视图,收集查询,显示最终结果,是用户在本地所使用的最后的模型成品。

Web表示层:接收客户层组件的要求,处理请求,然后将请求路由到业务层的适当组件;接受业务层传來的结果,计算一个适当的视图,然后将视图路由到对应客户端。

业务逻辑层:这一层由若干运行在EJB容器下的EJB组件和应用服务器组成。EJB封装了业务逻辑,应用服务器提供了JDBC技术,来访问数据库。
Web表示层和业务逻辑层是给 J2EE 发布工作任务的层次,主要是通过服务器完成工作。这两层是 J2EE 的核心层次。

数据层(EIS): 将前端业务逻辑层的组件与后端数据库层连接起来,收集好的信息放在该层,供用户访问。

2.6 B/S结构
B/S框架是目前被广泛采用的一种先进的框架结构,它是一种基于互联网的程序架构。当前的使用已经非常广泛,突破了传统的C/S结构的模式,给程序开发的模式带来新的技术革命。它是随着互联网技术的不断发展而发展起来的。随着互联网技术的不断发展,各种信息网站已经不能单独在一台电脑上使用和运行了,所以基于互联网的模式就逐步的发展起来了,并且得到了大规模的应用。

B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易。

B/S架构不需要在任何客户端来进行进行程序的部署,使用这样的程序结构来使用开发好的系统是利用浏览器来使用的,就是把开发好的程序配置到一台远程服务器上,在任何可以访问这台服务器的客户端电脑上都可以对程序进行操作和使用,这样的方式给使用者带来了极大的便捷。这样的结构提高了程序的运行效率,打破了地域的限制,降低了程序的使用成本。

对于我的城市公交查询系统,我们可以把系统配置在远程的服务器上,在得到访问权限之后,只要能够上网就可以使用和访问该系统并进行相关的操作,这样的一种先进模式我们之后只需要对服务器上的程序进行维护即可保证程序的正常使用,大大的提高了工作效率,降低了维护的成本。

省略

2.7 Tomcat服务器
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP[15]程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat 服务器部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 服务器时,它实际上作为一个与Apache 独立的进程单独运行的。

省略

2.8 Web技术
省略

3 系统需求分析
3.1 需求分析
省略

3.1.1 设计的原则

  1. 可用性原则。开发此系统本着以方便乘客查询准确的公交信息和方便用户对公交系统合理安排调度为原则。
  2. 可靠性原则。必须为管理员和用户提供安全的服务,尤其是要保证从 Internet 上可以访问到的后台用户管理,公交信息管理等功能的安全性。
  3. 友好性原则。使城市公交信息查询系统的操作上要求简单方便,便于用户和管理员掌握。
  4. 可维护性原则。能够对用户提出的相关的需求对该软件进行相关的修改和维护。

3.1.2 系统设计目标
(1)分析国内外公共交通建设及公交查询的研究现状和特点,简述学者在公交网络路径算法研究的发展历程;
(2)分析系统的需求。研究乘客出行的心理和行为,包括乘客获取公交信息的 途径、关注的信息、出行的考虑因素等,从用户角度分析得到系统需要完成的目标 和功能;
(3)设计系统的总体框架。介绍系统的开发环境和流程,从总体上设计系统的 功能,根据系统功能划分子模块,并详述每部分需要完成的功能,设计数据库;
(4)查找了解现有公交查询系统的网络路径最优算法。分析城市的公交线路特点,通过对地理公交网络的抽象,建立了公交网络的路径模型,并在此模型基础上,探讨了公交网络的最优路径算法。
(5)详述系统的设计与实现过程。对系统各模块的具体实现和结果给出了清晰的说明,以拟定的路线为实验数据,给出了查询的结果分析;
(6)总结了查询系统的特点以及一些不足之处,并对系统的改进作了展望。

3.2 系统可行性分析
省略

3.2.1 经济可行性分析
省略

3.2.2 技术可行性分析
本课题使用的是Java技术,开发平台选用MyEclipse,MyEclipse有这完整配备的功能,便于初学者使用还有代码提示,让我使用更加得心应手。在决定好编程框架后,再说用Java语言编码的优点:效率高、可重用性强、代码量少等。同时,使用的数据库是MySQL,开源的MySQL增添了可视化和稳定化的优点,而且安全方面也做得很好,更别说它的强大的保存数据功能以及查询数据功能。

3.3 用户需求
要设计一个良好的公交查询系统,就必须首先明确该应用环境对系统的要求。公交查询系统的应用背景为:方便市民搭乘公交车出行。所以乘客可以通过对车站站点查询、公交线路查询、站-站查询三种查询形式。同时设有管理员管理界面,负责添加、修改、删除指定的公交线路信息,为了更好的适应公交查询系统的实时性,使本系统更加完善,能更好的为用户所利用,我觉得还设计了在线提问和网站发布公告功能,在线提问能很好,很快的知道市民对公交查询系统的意见和一些对线路上不明确的提问,而网站发布功能则能更好的帮助政府和公交公司发布新闻和紧急情况,方便市民的知晓。因此,该系统需满足以下几方面需求:

查询功能:系统需要提供几种不同方式的查询手段,包括根据公交线路、日常站点、和任意两个站点查询乘车路线。其次,采用算法查找任意两个站点之间的乘车路线。具体功能如下所述:
6. 根据公交站点进行相应的信息查询。
7. 根据公交线路进行相应的信息查询。
8. 通过选择任意两个站点,完成两站点之间最短乘车路线查询。
用户管理功能:主要是删除用户信息和修改用户基本信息;
后台车次管理功能主要包含添加车次和站点功能、更新车次和站点功能、删除车次和站点功能,这样做到系统实时更新,为用户查询提供更为准确的信息。具体如下:
9. 完成车次和站点添加功能。
10. 完成车次和站点更新功能。
11. 完成车次和站点删除功能。
12. 用户登录验证功能。
13. 用户注册信息功能。
14. 用户注销功能。
15. 删除用户信息功能。
在线提问功能:在线提问主要包括用户对公交线路疑惑的问题发布,旨在让市民和政府和共同为提出疑问的市民进行解决和讨论。

网站公告发布功能:进行一些实时新闻的发布,包括线路的绕行,公交车价格的调整,以及一些实时的路况信息,均可通过此来查询,旨在为用户提供一个实时的,便捷的公交插叙系统。

3.4 系统功能需求概述
省略

要设计一个良好的公交查询系统,就必须首先明确该应用环境对系统的要求。公交查询系统的应用背景为:方便市民搭乘公交车出行;手动(目前)、自动(将来)、及时更新查询数据。因此,该系统需满足以下几方面需求:
1、查询功能:系统需要提供几种不同方式的查询手段,以实现灵活方便地管理整个系统。
2、数据的更新修改:
更新:系统允许管理员级别的用户对数据进行更新、修改并且存盘操作;
编辑:系统允许管理员级别的用户对数据进行编辑、删除的操作,保证现库的真实性与实时性。
系统采用B/S模式。整个系统最关键的就是数据库系统,一个强大的数据库可以支持完善一个优秀的软件设计,通过软件系统与数据库系统的连接来实现通过软件界面观察和处理操作数据

3.5 运行环境
本系统是一个WEb版的应用程序,需要在服务器上部署中间件Tomcat、MySQL数据库,其他的客户端通过网络进行访问该服务器即可。
(1)开发硬件平台:
CPU:酷睿双核 3.2GHZ
内存:4G以上
硬盘:500GB
(2)服务器端硬件平台:
服务器参考配置:Intel Xeon Quad Core E5530 80W 2.40GHz/5.8GT/8MB Cache, 2x2GB DDR3-1066MHz, 2.5in HS 146GB SAS,HS 675W PSU, ServeRAID MR10i(RAID 5), 2*Giga Ethernet,Light Path, CD-RW/DVD Combo, 1U,3 Years Onsite Next Business Day. 146GB 10K 6Gbps SAS 2.5" SFF Slim-HS HDD x3550M2/x3650M2/HS22
(3)开发软件平台:
操作系统:Window 8 或Win 7均可
数据库:Mysql

4 系统概要设计
4.1 概要设计的概论
省略

4.2 架构设计
系统采用B/S模式架构。B/S是Brower/Server的缩写,客户机上只要安装一个浏览器(Browser),如Netscape Navigator或Internet Explorer,服务器安装Oracle、Sybase、Informix 、SQL Server或 MySQL等数据库。浏览器与同数据库进行数据交互,可以通过Web Server实现 。

我们的系统使用的应用程序开发模型的B / S结构的三个阶段。目前,互联网应用架构,事务处理分为三个层次,即Web浏览器的互联网服务器数据库服务器。在这种架构中,通过Web浏览器业务表现是容易执行,用户通过Web浏览器提交表单时,将信息提供给消费需求的Internet服务器,Internet服务器,所需的分析查询,数据库服务器,数据库服务器执行,数据库服务器的查询结果返回给使用标准的HTML语言返回给Web浏览器的Internet服务器,Internet服务器。

4.3 系统功能结构图及分析
4.3.1 系统功能结构图
系统功能结构图如图4-1所示

图4-1系统功能结构图

4.3.2 系统基本功能
系统功能的划分方式可以分成很多种类,但是我按照界面流程将它分为了两大模块,第一个模块为前台查询模块。前台查询包括:站点查询,公交线路查询,站-站的查询,在线提问,网站公告。第二个模块为后台管理模块,后台管理模块包括:用户管理、线路维护、公告管理、提问管理。下面本节主要对各个基本的功能进行一个简要的介绍。
1.站点查询
站点查询是本系统的主要功能之一,为用户倒车提供前提条件,用户可以根据自己所到的站点,查询本站所经过的公交线路,从而完成换乘,前往自己的目的地,进入系统首页,在站点查询的对话框内输入自己要查询的地点,接着会转入到另一页面,这个页面包含了经过这一站点的所有公交线路,可点击查看,了解自己需换成的公交车的车号,完成换乘。
2.公交线路查询
公交线路查询是不系统不可缺少的功能之一,用户可根据自己了解到的公交线路名
称,查询该线路途经的站点,事先了解好自己所要经过的站点,提前做好下车准备,防止自己下错站,进入功能页面,在公交线路的对话框里输入所要乘坐的公交线路名称,之后会出现匹配的公交线路,点击查看,了解自己的所经的站点信息。
3.站—站的查询
此功能是整个系统的核心,也是最便捷的公交查询方法,只要用户输入自己的位置,以及所要到的位置,就会出现公交线路名称,途径站,以及所要换乘的下一班车,无需自己查看,系统自己就会给成乘车意见。进入页面输入自己的起始站,然后在第二个对话框输入自己要到达的站点,系统将显示出换乘的路线,这个功能十分的便利,深受广大市民的喜欢。
4.在线提问
在线提问功能是本系统的辅助功能。用户可根据自己对公交线路的不明确,向广大的市民发出提问,也可以抱怨本系统的不完善的地方供系统的设计者进行修改,完善系统的功能。
5.网站公告
网站公告功能也是本系统的辅助功能,用户可以点击此模块,查看网站管理员发布的公交信息,包括一些公交价格的调整,以及道路的施工导致的公交线路的绕行都可以在上面发表。
6.登录功能
登录功能是一个系统的重要组成部分,也是一个系统重要的门户功能,登录功能主要实现了使用者对系统的登录,在本文所设计的系统中,登录主要分成了两种登录身份:一般用户登录和管理员登录。两种身份登陆,能细分系统的功能模块,实现更加方便的操作和管理。
7.用户管理
用户管理是一个系统的重要功能之一,对用户的管理可以实现对系统使用者的了解和查看,能让使用者更加方便的使用本系统,用户的种类分为多种,本文主要体现在一般用户和管理者两种用户上面,可以对用户的信息进行添加修改,也可以删除和禁用用户。
8.线路维护
线路维护是对此系统功能的最大的保障,一个系统的基本功能是否可以实现全靠此功能维护,线路维护功能可对现有公交线路进行修改和删除操作,也可添加新的公交线路,这部分属于管理员用户的功能。
9.公告管理
公告管理是对前面所说的公告发布的一种监管,管理员用户可对已经发布的公告就行修改和删除,也可对新的公告进行添加,旨在为用户提供一个实时的公交线路查询的体验,方便乘客出行。
10.提问管理
提问管理是系统管理员对在线提问内市民发布的问题进行答复的功能,这个功能是系统管理员与市民进行交流的一个模块,管理员不仅能回答市民的问题,也可以发布一些问题征求市民的意见。

4.4 系统用例图
4.4.1 UML用例图简介
用例图用来确定需求的范围,这些需求是设计开发的依据。用例图将系统看作黑盒,从外部执行者的角度来理解系统。

用例图展示了用例之间以及同用例参与者之间是怎样相互联系的。用例图用于对系统、子系统或类的行为进行可视化,使用户能够理解如何使用这些元素,并使开发者能够实现这些元素。

下面简要介绍一下用例图中的组成元素:

  1. 角色(Actor)是与系统中的用例交互的一些实体,在实际情况中,角色可以是人,也可以是其他系统或者硬件设备。在画用例图的过程中,角色往往是第一个被确定的,因为系统或者用例在开始时是模糊的,但是参与系统的角色是最容易明晰的。有了角色之后,根据角色与系统的交互,以及角色要求的功能,可以进一步确定系统和用例。
  2. 用例(Use case)指的是系统的功能,它是系统某个功能的所有执行动作的集合。在UML图示中它是一个椭圆,但是具体分析用例的时候需要给出这个用例的所有执行动作的步骤。
  3. 连接(Assocation)是角色与用例的连接,表达此角色可以初始化此用例。
  4. 注释(Note)可以添加到任何地方,对用例图的不同部分加以说明。
  5. 泛化(Generalization)在面向对象的技术中无处不在,它的另一个名字也许更为著名,就是“继承”。

4.4.2 系统用例图

  1. 系统总用例图如图4-2所示:

图4-2系统总用例图
此用例图给出了系统所有用户的操作用例的框架,包括乘客用户和后台管理员用户,乘客用户的操作登陆浏览器,进入查询页面,选择查询方式,在线提问,以及查看发布的公告等功能,而后台管理员则可进行用户管理,线路管理及公告发布等功能,根据此用例图一目了然一般用户和管理员用户的职责。
2. 后台管理系统用例图如图4-3所示:

图4-3后台管理系统用例图
后台管理用户包括的工作有:公交线路管理、公告发布管理、用户管理。公交线路管理包括对所用公交线路的进行的增加还有删除操作的功能。公告发布管理包括对公告的增加和删除操作,用户管理就是对所有使用该系统的管理员用户进行的管理,包括增加用户和删除用户。

4.5 技术架构
所使用的架构是系统建设的关键,传统c/s架构,访问和操作已经不能满足大量用户需求,目前网络系统应用的主流是b/s,它基于浏览器的架构,可以交给服务器端来处理大量的数据处理工作,只用通过普通IE浏览器的客户端,还可以访问系统,操作起来方便快捷,而且利于更新和维护系统,在该方面具有优势的是java语言。
1.系统三层架构如图4-4所示:

图4-4 B/S三层架构示意图
4.6 数据库结构设计
数据库设计( Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求。
4.6.1 数据库设计的原则
省略

4.6.2 数据库结构分析
根据系统功能的要求,本系统管理和维护的数据元素(Entity 实体)有:系统用户、普通乘客用户、公交线路、公告发布,在线提问,提问评论。

  1. 系统用户实体包含这样一些基本属性:系统用户的ID、登录账户、密码、姓名、联系电话、系统用户的状态。其中,系统用户的ID是用户的唯一标志。系统用户能够实现系统的登录,完成对后台公交线路的管理,包括对线路的添加和删除操作,还有对所有用户的管理,对公告发布的管理。
  2. 普通乘客用户可以直接点击主页上的公交信息查询按钮进入查询功能:包括两个站点之间的查询、根据公交线路进行查询、根据站点进行查询。还可以进行公告的查看和在线提问和评论
  3. 公交线路的基本属性有:公交线路id,公交线路名称,公交线路所经站点,公交线路开始时间,以及公交线路终止时间。
  4. 公告发布的基本属性:公告id,公告的正文以及公告发布的标题。
  5. 在线提问的基本属性:问题id,问题的描述,问题的状态,问题发布的时间,问题的标题,问题发布者id。

4.6.3 数据库概念模型
现今应用的最广泛的数据库是关系型数据库。因为它是一个面向对象的系统设计,当然,数据库的设计,必须是面向对象的。现在应该怎么考虑对类进行持久性操作,即对象类是怎样映射到关系数据库的二维表中的。现今,像PowerDesigner、Rose 等都可以采用数据库建模工具来实现
1.用户的信息实体图如图4-6。

图4-6用户信息实体图
2.公交线路实体图如图4-7。

图4-7公交线路实体图
3.公交公告发布实体图如图4-8

图4-8公交公告发布
4.公交在线提问实体图如图4-9

图4-9公交在线提问
4.6.4 部分数据库数据表字段设计
在物理结构设计阶段,首先应该分两步走:
一是,在关系数据库中,确定数据库的物理结构,主要是指存取方法和存储结构。时间和空间效率是对物理结构的评价。.
二是要选取存取方法,并且是正确的关系模式,存取索引方法、聚簇存取、HASH存取方法等都是常用的方法。
依据以上规范数据库的部分表设计见下页:

  1. 用户表如表4-1所示
    2.
    4-1用户表

2.公交线路信息表如表4-2所示:

表4-2公交线路信息表

3.公交系统公告发布信息表如表4-3所示:

4.公交系统在线提问信息表如表4-4所示

表4-4公交系统在线提问信息表

5 系统详细设计
省略

5.1 系统数据库连接配置
数据库连接配置

<bean id="datasource"class="org.apache.commons.dbcp.BasicDataSource"><property name="driverClassName"value="com.mysql.jdbc.Driver"></property><property name="url"value="jdbc:mysql://localhost:3306/newspubs"></property><property name="username" value="root"></property><property name="password" value="123456"></property></bean>

5.2 系统流程图的分析设计
1.用户登录流程图
用户登录流程图如图5-1所示:

图5-1用户登录流程图
进入用户登录界面,首先输入用户名和密码,点击登录按钮,后台就行用户名和密码的匹配环节,如若俩个都正确及进入该用户界面,倘若有一个不对则登录失败,系统会提示用户重新输入。
2.会员注册流程图
会员注册的流程图如图5-2所示:

图5-2会员注册流程图
用户注册进入注册页面,注册内容有,账号,密码,姓名以及手机号,当将这些信息输入之后,后台数据库会比对用户输入的信息是否有无注册,假如已经注册,系统则会提示用户这个信息已经注册过,需要重新输入,假如没有比对成功,则成功建立相应的账户,并在数据库中得以保存。

5.3 系统登陆模块实现
用户系统主要分为俩大类:一类是一般用户,一类是管理员用户。
由于系统功能的特殊性,前台使用者不用登陆就可以实现公交查询的功能。
第一部分主要是一般用户,一般用户可以随意注册,注册的信息主要包括:用户的账号,用户的密码,用户的信息,还有用户的电话这四大部分,注册的信息会同数据库中已存在的信息进行对比,查看是否重复,如果重复则重新输入。注册成功就可进行一般用户的登录,比对用户账号和密码是否正确,若正确登录成功,反之重新提醒用户进行登录。

一般用户登录界面如图5-3所示

5-3一般用户登录界面
第二部分为管理员用户登录,因为管理员用户的登录界面不能存在注册按钮,所有管理员用户的信息必须从数据库中直接录入。
实现的过程主要有几个步骤,进入首页后点击右上角的进入后台按钮,将会看到图5-4的登录界面,按照要求输入管理员用户的账号密码,首先对管理员输入的信息进行保存然后利用程序从数据库中进行检索看是不是有管理员输入的信息在数据库中是否存在如果存在就返回正确的结果,如果不正确就返回错误的结果。如果结果数据库中存在就显示登录成功,如果数据库不存在就显示失败请重新登录。

管理员用户登录界面如图5-4所示:

     图5-4 登录界面

5.4 前台功能模块设计
5.4.1 公交查询设计
本系统的首页设计为查询界面,为的是方便高效和快捷,此系统查询分为三大功能:第一个功能为站-站的查询功能,第二个是公交线路的查询功能,第三个是公交站点的查询功能。接下来将介绍三大功能
1.站—站的查询功能;用户可将准备出发的起始站点和终止站点分别对应的输入到换乘查询的输入框内,系统会根据用户输入的站点信息,列出提供的换乘路线,系统将优先查找到的直达公交线路排在前面,方便用户的选择。
2.公交线路的查询功能:用户可以输入完整的公交线路号进行查询公交线路,系统会筛选出匹配的线路,用户可以点击查看,查看所查到的公交线路,里面有每个线路确切的途经站点。
3.公交站点的查询功能:用户在不了解公交线路的情况下,可以搜素要到达的公交站点,输入自己要到达的地点,公交查询系统会对比数据库为用户匹配出所有进过这一站点的公交线路,用户可根据此来选择乘坐的线路。
查询界面如图5-5所示:

图5-5 查询界面
用户输入起始站与终点站查到的结果如图5-6所示:

图5-6 站-站的查询
用户输入公交线路查询如图5-7所示:

图5-7 公交线路查询
用户输入公交站点查询如图5-8所示

图5-8公交站点查询

5.4.2 热门线路功能模块设计
热门查询线路模块列举了所有在数据库中的公交线路,本人在网上随意挑选了一些公交线路录入其中,市民可以在热门线路中查看所有公交线路,挑选符合属于自己出行的公交线路
下图是热门线路模块的界面,如图5-9所示:

图5-9 热门线路功能实现界面
5.4.3 网站公告功能模块设计
用户点击网站公告模块后会看到管理员发布的公交新闻,包括一些公交线路的改道,还有公交价格的调整,网站公告由后台管理员进行上传。
下图是网站公告功能模块的实现界面图,如图5-10所示:

图5-10网站公告功能实现界面

下图是网站公告内容的详细信息,如图5-11所示

图5-11网站公告的详细信息
5.4.4 在线提问模块设计
在线提问模块旨在帮助乘客解决他们在实际的乘车过程中遇到的困难,以及对城市公交查询系统的建议,这是一项非常人性化的设计,因为设计员并没有真正的参与使用,有些问题体会不到,用户可在此模块发表问题,提出自己的见解,也可在此回答其他市民的疑惑。
下图是在线提问功能模块的界面,如图5-12所示:

图5-12 在线提问功能界面
5.5 后台功能模块设计
管理员的设置是为了系统能够安全的、系统的平稳运行,本系统为管理员设置了用户管理、公告管理、线路维护和会员提问四大功能模块。
用户管理:用户管理是对已注册用户的基本信息进行更新维护;主要包括对用户的添加,用户的删除,用户的修改
公告管理;公告管理是对公告进行发布和对已发布公告进行修改和删除操作,保证公告的实时性,及时添加新的公告,也要删除旧的,无用的公告
线路维护:线路维护主要是对新线路进行添加和对不用线路的删除,以及对现有线路的修改;
会员提问:对市民提出的问题进行答复,帮助市民解决出行问题,更好的完善城市公交管理系统。
用户管理的实现界面,如图5-13所示:

图5-13 用户管理
线路维护管理管理的实现界面如图5-14所示:

图5-14 线路维护管理
公告管理的实现界面如图5-15所示:

图5-15 公告管理

会员提问的实现界面如图5-16所示

图5-16 会员提问

6 系统测试
6.1 程序测试
省略

6.2 测试的重要性及目的
省略

6.3 测试的步骤
省略

6.4 测试的主要内容
省略

6.4.1 功能测试
功能测试主要包括五项内容:适用性、准确性、可操作性、依从性、安全性。
本系统功能测试如表6-1所示:
表6-1 系统功能测试

本系统功能测试测试用例6-2所示:

6.4.2 可用性测试
可用性测试用于检测网站的可理解性、可操作性和学习性等方面内容。具体测试方面如表6-3所示。
表6-3 网站可用性测试

6.4.3 性能测试
系统的性能测试主要是通过模拟网站运行环境,测试网站性能是否符合客户的需求。性能测试的重要技术指标是:网站的运行速度、网络响应的时间和支持并发节点数。
(1)测试网站的运行速度:通过在不同的计算机上进行试运行本网站,没有发现任何停顿、迟滞现象。
(2)测试网络响应时间:网络响应时间主要包括:网络最小响应时间、平均响应时间和最大响应时间这三个参数。经过测试,在网络运营良好状态下,局域网内响应时间三参数为:1/2/5s,外网响应时间三参数为3/7/12s,符合客户的需求,属于在用户的心理可承受范围内。
(3)支持并发节点数:经过模拟的环境测试,本网站在并发节点达到45个时,网络运营的速度会发生比较大的波动,延迟时间10秒左右,符合客户需求。

6.5 测试结论
省略

本系统设计要求基本都可以达到,此系统具有完整的软件功能,良好的用户界面,能够正确的处理错误信息,而且能够准确的提出错误的种类。总体说来,软件通过测试。
经过对上述的测试结果分析,本系统满足用户的通过计算机平台用户使用的要求和需求。所有基本功能齐全,操作简单,产品运行性能良好,是一个值得推广的公交查询系统。

总结与展望
省略

参考文献
[11] 汪光焘.畅通城市交通,实现城市的可持续发展.可持续发展,2002,(2):18-19
[12] 马武定.城市化与城市可持续发展的基本问题.城市规划汇刊,2002,(2):7-9
[13] 冯博.SQL实用教程.北京:人民邮电出版社,2005
[14] 严蔚敏,吴伟明.数据结构(c语言版).北京清华大学出版社,1997
[15] 张海藩.软件工程.北京:人民邮电出版社,2002
[16] 黄斯伟.HTML完全使用详解.北京:人民邮电出版社,2005
[17] Anthony J.Dos Reis. Compiler Construction Using Java,JavaCC,and Yacc. Wiley-IEEE Computer Society Pr; 1 , 2011
[18] Joan Casteel. Oracle 12c:SQL. Course Technology; 3, 2015
[19] Richard North Patterson. Eclipse. Pan Publishing, 2009
[20] 李兴华,王月清.名师讲坛:Java Web开发实战经典基础篇(JSP、Servlet、Struts、Ajax) [平装][M].清华大学出版社,2010.
[21] 李刚.轻量级Java EE企业应用实战(第3版):Struts 2+Spring 3+Hibernate整合开发[M].电子工业出版社,2012.
[22] 孙卫琴:《精通Hibernate:Java对象持久化技术详解》[M].电子工业出版社出版,2010.
[23] Budi Kurniawan (作者),崔毅 (译者),俞哲皆 (译者),俞黎敏 (译者).Servlet和JSP学习指南[M].机械工业出版社,2013.
[24] 陆舟.Struts2技术内幕:深入解析Struts2架构设计与实现原理 [M].机械工业出版社,2012.
[25] 陈亚辉,缪勇.Struts2+Spring+Hibernate框架技术与项目实战[M].清华大学出版社,2012.
[26] 施瓦茨 (Baron Schwartz),扎伊采夫 (Peter Zaitsev),特卡琴科 (Vadim Tkachenko),宁海元.高性能MySQL(第3版)[M].电子工业出版社,2013.
[27] 薛华成.信息管理与信息系统专业教材系列:管理信息系统(第6版)[M].清华大学出版社,2012.
[28] 王颖.基于JSP的学生学籍信息管理系统的设计与实现[J].电子科技大学,2012.
[29] 朱丽萍.基于JSP的高校图书管理系统开发和实现[J].电子科技大学,2011.
[30] 吕勇.基于JSP的实验室项目管理系统的设计与实现[J].武汉理工大学,2012.
[31] 庞丽娜.Java 应用开发技术详解[M],科学出版社,2007:126-235
[32] Cay S.Horstmann,Gary Cornell著,叶乃文,邝劲筠,杜永萍.JAVA核心技术卷I:基础知识,程序设计教程[M].人民邮电出版社,2008.5:87-234
[33] 张超.基于JSP Struts2技术的房地产信息管理系统的设计与实现[D].吉林大学,2012.
[34] (美)Powell.R. (美)Weeks.R.著. 袁鹏飞译. C#和.NET架构. 北京:人民邮电出版社,2002.4 17
[35] 萨师煊,王珊.数据库系统概论(第三版).北京:高等教育出版社,2000.2

致 谢
省略

外文原文
省略

中文翻译
省略


5、资源下载

本项目源码及完整论文如下,有需要的朋友可以点击进行下载。如果链接失效可点击下方卡片扫码自助下载。

序号 毕业设计全套资源(点击下载)
本项目源码 基于java+JSP+J2EE的城市公交查询系统设计与实现(源码+文档)_java_J2EE_jsp_城市公交查询系统.zip

java毕业设计——基于java+JSP+J2EE的城市公交查询系统设计与实现(毕业论文+程序源码)——城市公交查询系统相关推荐

  1. asp毕业设计——基于asp+sqlserver的个人网站建设设计与实现(毕业论文+程序源码)——个人网站建设

    基于asp+sqlserver的个人网站建设设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于asp+sqlserver的个人网站建设设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦 ...

  2. C#毕业设计——基于C#+asp.net+sqlserver的搜索引擎设计与实现(毕业论文+程序源码)——搜索引擎

    基于C#+asp.net+sqlserver的搜索引擎设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于C#+asp.net+sqlserver的搜索引擎设计与实现,文章末尾附有本毕业设计的 ...

  3. asp毕业设计——基于asp+access的网上远程教育网设计与实现(毕业论文+程序源码)——网上远程教育网

    基于asp+access的网上远程教育网设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于asp+access的网上远程教育网设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦.需要下 ...

  4. android毕业设计——基于Android+Tomcat+JavaEE的旧物交易平台设计与实现(毕业论文+程序源码)——旧物交易平台

    基于Android+Tomcat+JavaEE的旧物交易平台设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于Android+Tomcat+JavaEE的旧物交易平台设计与实现,文章末尾附有 ...

  5. asp毕业设计——基于asp+access的博客网站设计与实现(毕业论文+程序源码)——博客网站

    基于asp+access的博客网站设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于asp+access的博客网站设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦.需要下载开题报告P ...

  6. asp毕业设计——基于asp+sqlserver的WEB社区论坛设计与实现(毕业论文+程序源码)——社区论坛

    基于asp+sqlserver的WEB社区论坛设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于asp+sqlserver的WEB社区论坛设计与实现,文章末尾附有本毕业设计的论文和源码下载地 ...

  7. asp毕业设计—— 基于asp+access的课程教学网站设计与实现(毕业论文+程序源码)——教学网站

    基于asp+access的课程教学网站设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于asp+access的课程教学网站设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦.需要下载开 ...

  8. asp毕业设计——基于asp+access的校园网物品交易平台设计与实现(毕业论文+程序源码)——校园网物品交易平台

    基于asp+access的校园网物品交易平台设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于asp+access的校园网物品交易平台设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦 ...

  9. C#毕业设计——基于C#+asp.net+sqlserver的网络商店设计与实现(毕业论文+程序源码)——网络商店

    基于C#+asp.net+sqlserver的网络商店设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于C#+asp.net+sqlserver的网络商店设计与实现,文章末尾附有本毕业设计的 ...

  10. asp毕业设计——基于asp+access的商品销售网站设计与实现(毕业论文+程序源码)——商品销售网

    基于asp+access的商品销售网设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于asp+access的商品销售网设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦. 文章目录: ...

最新文章

  1. Java中的Split方法不适用于一个句号
  2. 【CodeForces】914 E. Palindromes in a Tree 点分治
  3. Golang的导包和引用包的问题
  4. http强缓存在firefox和chrome之间的差异
  5. linux 自动连接无限,hotplug应用实例:自动连接无线网
  6. 十分钟学习python_10分钟带你入门Cython
  7. 盗企鹅号发娱乐八卦稿60天收益7.5万元?腾讯回应了...
  8. java画方块_[求助]用Swing就画一个方块代码出错了
  9. 所有浏览器主页惨遭篡改:http://wangzhi6.dhtz444.top/或https://www.2345.com/
  10. ASP.NET文件的上传与下载
  11. C语言知识点总结 (一 )
  12. Flex Builder 4.6切换语言
  13. 在走迷宫任务中实现强化学习(持续更新中)——第二课:移动体的路径规划(小川雄太郎《边做边学深度强化学习》项目复刻)
  14. 每天有8千人在逃离北上广!扎心不?
  15. PCB Layout爬电距离、电气间隙如何确定-安规
  16. 【转载】应聘总经理的答卷,供大家打分
  17. 南阳oj 题目127 星际之门(一)
  18. 360极速了浏览器 HTML5的浏览器,360极速浏览器4大HTML5特性 领先全球
  19. 第一个RDD,几个数据探查命令
  20. 对于学it的来说,软考的高级证书难考吗,难度大吗?

热门文章

  1. 推荐一款截图神器——FSCapture
  2. C语言杨辉三角的程序分析,C语言:打印杨辉三角
  3. PAT1014 福尔摩斯的约会 分数 20
  4. PostgreSQL 14和SCRAM认证的改变--应该迁移到SCRAM?
  5. 计算机网络超时重传时间,TCP超时重传机制
  6. Breez.LocalAPK.v1.8.1.x86.WinALL.Regged-BLiZZARD
  7. SpringBoot接入支付宝
  8. Programming Languages PartA Week2学习笔记——SML基本语法
  9. python读取excel数据并进行数据可视化_用Python处理Excel的数据,并将之可视化
  10. arcgis desktop和arcgis engin连接postgresql数据库连接需要的类库