城市公交查询系统的设计与实现-学士学位论文.doc
JIU JIANG UNIVERSITY毕 业 论 文题 目 城市公交查询系统的设计与 实现 英文题目 City Public Transport Query System Design and Implementation 院 系 信息科学与技术学院 专 业 计算机科学与技术 姓 名 付文林 班级学号 A081135 指导教师 邵君 二一二年五月信息科学与技术学院学士学位论文摘 要公交查询系统是城市道路交通的重要组成部分,是城市发展的必然产物,是联系国民生活、社会生产和流通领域的关键环节。我国城市公交查询系统的发展处于一个较落后的水平,人们可以获得信息的方式很少,随着Internet的普及,开发一种基于JSP的公交查询系统更加适应现代社会的要求,这样可以很大程度的方便人们出门乘坐公交车。论文详细介绍了该公交查询系统所要实现的功能。首先,实现多种查询功能,包括根据商厦名称、公交车号、日常站点和任意两个站点查询乘车路线。其次,采用最短路径算法查找任意两个站点之间的最短乘车路线,这也算是一个小小的亮点。最后,提供了用户留言的功能、管理员留言管理功能和后台车次管理功能。用户留言功能主要是收集用户的留言信息,可以根据用户提供的留言信息中提出的建议,对系统进行修改和完善;管理员留言管理功能主要是回复和删除用户的一些留言;后台车次管理功能主要包含添加车次和站点功能、更新车次和站点功能、删除车次和站点功能,这样做到系统实时更新,为用户查询提供更为准确的信息。关键词:最短路径算法,公交查询AbstractBus inquiries system is an important part of the urban road traffic, the inevitable outcome of urban development is to contact the national life, the key aspects of social production and circulation. The development of China's urban public transport query system in a less advanced level, very few people can get information, with the popularity of the Internet, to develop a JSP-based public transport query system more responsive to the requirements of modern society, so a large extent the convenience of people out to take the bus.The paper details the functions to be achieved by the query system of the bus.First, to achieve a variety of query functions, including query bus routes under the commercial name, bus number, daily site and any two sites.Second, using the shortest path algorithm to find the shortest bus route between any two sites, it would be a small bright spot.Finally, it provides the functionality of the user message the webmaster management capabilities and background trips management functions. Guest main function is to collect the user's message, according to the recommendations made in the message provided by the user to modify and improve the system; the webmaster main function is to reply to and delete the user's message; background trips management functions Include add trips and site features, updates trips and site features, delete trips and site features, so do the systems updated in real time to provide more accurate information for the user query.Keywords: Shortest path algorithm, public transport inquiry目 录摘 要IAbstractII1 绪论1.1系统研究的背景(1)1.2系统研究的意义(2)1.3系统的开发的目的(2)1.4系统相关技术简介(2)1.5论文结构(3)2 需求分析2.1需求的任务(4)2.2系统数据流程分析(5)2.3系统的E-R图(5)2.4系统的功能需求分析(7)2.5系统的环境需求分析(7)2.6本章小结(9)3 系统设计3.1系统的总体设计(10)3.2系统的总体功能图(10)3.3系统的流程图(11)3.4系统的数据库设计(13)3.5本章小结(16)4 系统实现4.1系统功能简介(17)4.2功能模块实现(17)4.3本章小结(34)5 系统测试5.1测试序号(35)5.2测试模块与运行(35)5.3本章小结(42)总结与展望(43)致 谢(44)参考文献(45)IV信息科学与技术学院学士学位论文1 绪论1.1系统研究的背景20多年来,我国经济得到了持续、快速、稳定、健康地发展。城市经济发展,城市规模越来越大,相应的城市公交系统也越来越庞大。城市交通网络在城市发展中占有至关重要的地位。它不仅是城市的一个重要组成部分,同时也决定了城市中居民的生活方式。长期以来,交通问题已成为困扰城市发展的重要问题。世界各国都面临着日益严重的城市交通问题,如交通拥挤、车辆行驶缓慢、交通事故频繁及其由于交通堵塞造成的大量空气污染等,由此而带来大量的经济损失和人员伤亡。许多发达国家逐渐认识到,欲有效地解决这些问题,仅仅依靠道路建设、扩大路网规模是远远不够的,交通问题的解决必须依赖现在信息技术与管理技术的有机结合1。许多新建小区大量出现,公交线路也日渐增多,给人们的出行带来了极大便利,但是由于城市规模的不断发展,给人们选择出行乘车线路造成了一定的困难。即使一个在城市生活多年的人,给他任意两个地点,要他说出这两个地点之间的乘车方案,他往往也是很难说出来的。但是如果给他一张交通地图之后,他可以很快地找出图上的任意两点之间的乘车方案,所找出的方案即使不是最优的,也是一条可供参考的备选方案。但是这样的查询效率是相当低的,所以需要提供一个高效的查询系统,才是问题更本所在。而基于JSP的公交查询系统,就是利用B/S结构开发出来的查询系统,它通过利用数据结构当中的最短路径算法,可以查出任意两个地点之间最短的乘车方案。它不仅可以用于公交公司管理系统中,也可以单独作为公交管理系统的一个模块存在,并可以制作成公交信息系统查询网,放置于城市的主要场所。这样不仅可以体现出一个城市的智能公交系统的水平,更显示出城市的数字化,信息化水平。项目研究的基于JSP的公交查询系统,让人们通过互联网很快的查出该城市任意两站点之间的最短乘车路线。1.2系统研究的意义目前,我国众多大城市普遍存在交通拥挤,延误人们平时上班时间。甚至影响了城市旅游业经济的可持续发展。所以为了切实的改善公交车内拥挤状况,适当增加发车次数以缩短乘客等车时间,但是能够准确为人们提供最短的乘车线路才是得到解决的最好办法,这样大大的缩短了人们的乘车时间。近十几年来,随着地理信息系统技术的快速发展,地理信息系统的各种应用在城市规划、管理方面越来越起到不可低估的作用。在众多有关城市地理信息的应用中,城市交通地理信息系统的发展越来越受到地理学者、城市管理者的瞩目。交通数据的种类繁多(包括属性数据、空间数据、影像数据等),数据量大,操作复杂,人工管理难度大2。项目研究的基于JSP的公交查询系统,让人们通过互联网很快的查出该城市任意两站点之间的最短乘车路线。系统是从城市交通现状出发,根据人们的出行规律,设计了一个完整的基于JSP体系的公交车查询系统。该系统可以根据商厦名称,公交车号,日常站点和站点之间为查询条件分别进行查询,解决了市民出行乘坐公交车时经常遇到的困难。1.3系统的开发的目的本系统主要是为了人们出行的方便以及节约人们乘坐公交车所用的时间,现在网上的公交车查询系统都有漂亮的网页和完善的功能,所以本系统运用HTML、JSP等技术来编辑网页,并运用JDBC技术把数据库和动态网页相关联。本系统自己设计数据库,使得公交车信息、站点信息、商厦信息等能够及时的添加、删除以及更新,人们还可以留言发表一些合理的建议使得本系统更加的完美。1.4系统相关技术简介(1)JSP的概念JSP程序是一个服务端页面脚本程序,可以在这个脚本中直接编写客户端浏览器需要显示的HTML文档内容,当然也可以依照JSP规范将Java程序代码嵌入脚本。JSP脚本规范提供了若干内部对象来简化JSP程序和浏览器之间的输入输出处理。由于JSP程序是从HTML页面添加Java动态处理代码而来,因此,JSP程序又称为动态JSP页面3。(2)JavaBean的概念JavaBean是一种JAVA语言写成的可重用组件,用户可以使用JavaBean将功能、处理、值、数据库访问和其他任何可以用Java代码创造的对象进行打包,并且其他的开发者可以通过内部的JSP页面、Servlet、其他JavaBean、applet程序或者应用来使用这些对象。用户可以认为JavaBean提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变。这个对J2EE业务逻辑层处理具有相当重要的部分4。(3)Java ServletJava Servlet使用的是一种请求/响应机制,也就是说通过特定的Java程序设计技术,由该Servlet动态产生的响应向某一特定的请求做出响应。Servlet所能应用的请求/响应场合很多,但常用的还是在Web应用程序中用于产生超文本传输协议响应(HTTP)。据此,Servlet可能取代其他类型的HTTP请求/响应机制,譬如通用网关接口(CGI)脚本5。(4)Session对象Session对象是类javax.servlet.Httpsession的一个对象,是用来保存每个用户信息(以会话的形式直接保存在WEB服务器端),以便跟踪每个用户的操作状态6。1.5论文结构论文分为以下结构:第一章:绪论,介绍系统研究的背景及意义,系统研究的工作。第二章:需求分析,对系统的功能需求以及数据需求进行分析。第三章:系统设计,对系统的数据库和功能进行设计与实现。第四章:系统实现,对系统的一些功能进行实现,保证系统没有出现错误,对有错误的地方进行修改及完善。第五章:系统测试,对系统进行测试,保证系统完整运行。2 需求分析需求分析是介于系统分析和软件设计阶段之间的重要桥梁7。一方面,需求分析以系统规格说明和项目规划为分析活动的基本出发点,并从软件角度对它们进行检查与调整;另一方面,需求规格说明又是软件设计、实现、测试的主要基础。良好的分析活动有助于避免或尽早剔除早期错误,从而提高软件生产率,降低开发成本,改进软件质量。2.1需求的任务软件需求分析的任务是:深入描述软件的功能和性能,确定软件设计的约束和软件同其他系统元素的接口细节,定义软件的其他有效性需求,借助于当前系统的逻辑模型导出目标系统逻辑模型,解决目标系统“做什么”的问题。需求提出主要集中于描述系统目的。需求提出和分析仅仅集中在使用者对系统的观点上。用户、开发人员和用户确定一个问题领域,并定义一个描述该问题的系统。这样的定义称作系统规格说明,并且它在用户和开发人员之间充当合同。在问题分析阶段分析人员的主要任务是:对用户的需求进行鉴别、综合和建模,清除用户需求的模糊性、歧义性和不一致性,分析系统的数据要求,为原始问题及目标软件建立逻辑模型8。分析人员要将对原始问题的理解与软件开发经验结合起来,以便发现哪些要求是由于用户的片面性或短期行为所导致的不合理要求,哪些是用户尚未提出但具有真正价值的潜在需求8。在需求评审阶段,分析人员要在用户和软件设计人员的配合下对自己生成的需求规格说明和初步的用户手册进行复核,以确保软件需求的完整9、准确、清晰、具体,并使用户和软件设计人员对需求规格说明和初步的用户手册的理解达成一致。一旦发现遗漏或模糊点,必须尽快更正,再行检查。公交查询系统需要满足几个方面的需求,一是用户公交查询的需求;二是用户留言的需求;三是管理员车次及站点信息管理的需求;四是管理员留言管理的需求。在界面需求上要做到美观、操作方便10,给用户和管理员一个舒适简便的公交查询系统,管理员能够及时的添加、删除以及更新车次和站点的信息,使用户能够及时的了解公交车的信息,不会耽误用户乘坐相关的公交车。2.2系统数据流程分析 数据流图是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经过的变换11。在数据流图中没有任何的物理部件,它只是描绘数据在软件中流动和被处理的逻辑过程。因为数据流图是逻辑系统的图形表示,即使不是专业的计算机技术人员也容易理解,所以是极好的通信工具12。此外设计数据流图纸需要考虑系统必须完成的基本逻辑功能,完全不需要考虑如何具体地实现这些功能13。公交查询系统数据流图如图2-1所示。留言信息库线路信息库站点信息库车次信息库管理员登录车次管理站点管理线路管理公交车查询留言用户图2-1 系统数据流图2.3系统的E-R图通过对公交车查询系统的数据分析,得出系统的E-R图,然后系统的E-R图可以分为管理员实体及属性、留言板实体及属性和车次与站点之间关系,分别如图2-2,图2-3,图2-4所示。管理员管理员名密码图 2-2管理员实体及属性留言板留言人留言时间留言标题留言内容留言ID管理员留言回复图2-3 留言板实体及属性nm车次信息站点信息经过车子档次起点站终点站票价站点号车号票价档次站点次序站点号车号站点名称图2-4 车次与站点之间关系2.4系统的功能需求分析系统具有以下基本功能:(1)公交查询:用户可以通过4种查询方式查询公交车,分别是商厦查询、线路查询、站点查询以及站点之间查询。(2)用户留言:用户可以对系统不完善的地方以及对系统管理员或是工作人员提出合理的建议在留言上,使系统更加完善。(3)管理员对车次及站点管理:管理员要及时添加、删除以及更新公交车车次和各个站点的基本信息,使用户可以更好的使用系统。(4)管理员留言管理:管理员需要及时的查看用户所留的一些合理的留言并且给予回复,对一些不合理的留言可以进行删除。2.5系统的环境需求分析2.5.1开发平台系统开发选用的平台是Struts2+Java Server Page(简称JSP)和Mysql数据库,它适应于Windows操作系统并能很好的与其应用程序结合,而且Mysql数据库也易操作。具体如下:(1)采用了Internet架构,Bowser/Server模式。(2)Web服务器采用Tomcat5.5服务器,数据库管理系统为Mysql。(3)采用了jdk1.6的环境2.5.2系统开发工具本系统是基于Struts2+JSP+Mysql数据库技术实现的,现对JSP技术和Mysql数据库以及Struts2框架作简要的介绍。2.5.3开发语言JSP页面由HTML代码和嵌入其中的Java代码所组成。JavaBean是JSP的技术基础,而且大型的Web应用程序的开发需要JavaBean和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网等特点。JSP的技术的优势:(1)一次编写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码不需要做任何更改。(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/PHP的局限性是显而易见的。(3)JSP技术是用Java语言作为脚本语言的。Java语言是成熟的、强大的、易扩充的编程语言。(4)高效性与安全性。JSP在执行前先被编译成字节码,字节码由Java虚拟机解释执行,比源码解释效率高。(5)可维护性。由于JSP技术是一种开放的、跨平台的结构,因此Web服务器、平台及其他组件能很容易升级或切换,且不会影响JSP基本的应用程序。(6)多样化和功能强大的开发工具支持。Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。2.5.4数据库Mysql是Oracle公司的一款数据库产品,因为其小巧亦操作,却十分稳定,成为一些中小型项目和我们学习中最常用的数据库,在这里便使用了这款成熟稳定的数据库。2.5.5框架在Stru ts2出现之前,Struts1就是一个非常有名的框架,它实现了MVC模式。之后出现的WebWork框架也是一个很优秀的框架,随着时间的发展,Struts1渐渐淘汰,有人用WebWork的核心并包装上Struts1,由此产生了更先进的技术Struts2。Struts2是经典的MVC结构框架,将显示,控制,逻辑很好的分离,可以使我们开发起来更具延展性。2.6本章小结本章首先介绍了需求分析的作用,其次介绍了数据流程分析,把系统的数据流图画出来,接着介绍系统的功能需求分析,讲述系统的一些功能,最后介绍系统的环境需求分析,本章主要就是为了让大家理解系统的一些需求,结合实际来合理的开发使用公交查询系统。3 系统设计3.1系统的总体设计公交查询系统的功能模块可以分为以下模块:(1)管理员登陆功能模块:管理员登陆要输入正确的管理员名、密码以及账号,否则登陆失败。(2)站点和车次查询模块:用户可以直接以4种查询方式查询公交车的站点和车次信息,分别是商厦查询、线路查询、站点查询以及站点之间查询,其中站点之间查询还可以告诉你2个站点之间的最短路劲以及相应的换乘车次和站点。(3)用户留言模块:用户可以对系统的进行留言,对系统的一些不足之处提出合理建议给管理员,是系统更加的完善。(4)管理员操作模块:管理可以对公交车站点和车次信息进行添加、删除以及更新,使广大用户能够及时的查看最新的公交车站点和车次信息,不耽误广大用户乘坐公交车。(5)管理员管理留言模块:管理员可以查看用户的留言并对用户的留言进行回复以及删除,对用户对本系统提出的一些合理的意见给予感谢。3.2系统的总体功能图城市公交查询系统从功能上可以分为用户查询公交车信息、用户留言、管理员对公交车信息管理操作、管理员留言管理5部分。具体功能结构图如图3-1所示。3.3系统的流程图城市公交查询系统中用户可以用4种查询方式查询公交车信息,分别是商厦查询、线路查询、站点查询、站点之间查询;用户可以留言以及查看留言;管理员公交车信息操作,对公交车信息进行添加、删除以及更新;管理员留言管理,对用户的留言进行回复或是删除,每一个都有不一样的流程,对应有各自的流程图,具体的系统流程图如下。(1)用户查询公交车信息工作流程如图3-2所示。城市公交查询用户公交车查询用户留言公交车信息管理留言管理商厦查询线路查询站点查询站点之间查询留言查看留言站点和车次添加站点和车次删除站点和车次更新删除留言回复留言图3-1 系统功能结构图首页商厦查询线路查询站点查询站点之间查询图3-2 用户查询流程图(2)用户留言以及查看留言工作流程如图3-3所示。是否首页留言查看留言是否填写留言主题和内容留言成功图3-3 用户留言流程图(3)管理员公交车信息操作工作流程如图3-4所示。否是开始管理员登陆验证管理员名和密码是否正确站点与车次添加站点与车次删除站点与车次更新退出图3-4 管理员公交车信息操作流程图(4)管理员留言管理工作流程如图3-5所示。否是开始管理员登陆验证管理员名和密码是否正确删除留言回复留言退出图3-5 管理员留言管理流程图3.4系统的数据库设计本系统数据库采用Mysql5数据库,系统数据库名称为bus,共包含7张表。(1)管理员表administrator如表3-2所示。表3-2 管理员信息字段名数据类型长度允许空adminiIDVarchar50Not nulladminipasswordVarchar50Not nulladminiID: 管理员名adminipassword: 密码(2)车次信息表BusInfo如表3-3所示。表3-3 车次信息表字段名数据类型长度允许空BusNumInt4Not nullBeginStVarchar50Not nullEndStVarchar50Not nullTicketNoteVarchar50nullBusLevelVarchar50nullNoteVarchar50nullBusNum: 车号BeginSt: 起点站EndSt: 终点站TicketNote: 票价BusLevel: 车子档次Note: 票档次(3)站点信息表StInfo如表3-4所示。表3-4 站点信息表字段名数据类型长度允许空StIDInt4Not nullStNamevarchar50Not nullStID: 站点号StName: 站点名称(4)车次与站点关系表BusSt如表3-5所示。表3-5 车次与站点关系表字段名数据类型长度允许空BusNumInt4Not nullStIDInt4Not nullStOrderInt4Not nullBusNum: 车号StID: 站点号StOrder: 站点次序(5)商厦信息表publicplace如表3-6所示。表3-6 商厦信息表字段名数据类型长度允许空PlacesidInt4Not nullPlacesnamevarchar50nullPlacesid: 商厦号Placesname: 商夏名称(6)站点与商厦关系表stplace如表3-7所示。表3-7 站点与商厦关系表字段名数据类型长度允许空StIdInt4Not nullPlaceIdInt4Not nullStId: 站点号PlaceId: 商厦号(7)留言信息表message如表3-8所示。表3-8 留言信息表字段名数据类型长度允许空UsernameVarchar50Not nullMessagedateDatetime8Not nullTopicVarchar50Not nullMessagetextVarchar200Not nullIdInt4Not nullReplyVarchar200nullUsername: 用户名Messagedate: 留言日期Topic: 留言主题Messagetext: 留言内容Id: 留言序号Reply:回复3.5本章小结本章节主要就是介绍系统的功能还有数据库的设计,系统的功能不是一个人可以完善的,需要很多人的意见结合起来才可以做成一个完美的系统,所以加了留言系统让广大用户对系统提出意见来进一步的完善系统;数据库是一个项目的核心,所有的数据都要存储在数据库中,将这些数据设计好不是很好做的事情,需要根据业务来设计,数据库的设计让我对数据库有了进一步的理解。4 系统实现系统实现是软件项目开发过程中的主要部分,在系统实现中要有简洁、美观、可读性好、整体统一等准则。4.1系统功能简介城市公交查询系统从功能上可以分为管理员登陆模块、站点和车次查询模块、管理员操作模块、用户留言模块、管理员管理留言模块5部分。管理员登陆管理:对是否输入正确的管理员名以及密码进行验证,正确的话进入管理员操作界面,失败的话继续管理员登陆界面。站点和车次查询:用户可以使用商厦查询、线路查询、站点查询以及站点之间查询来了解公交车的站点和车次信息,方便用户乘坐合理的公交车。管理员操作管理:管理员必须及时的添加、删除以及更新公交车的站点和车次信息,是广大用户能够及时的知道最新的公交车的信息,不会误导用户乘坐公交车。用户留言管理:用户可以再留言板上进行留言,对本系统提出一些合理的建议。管理员留言管理:管理员查看用户留言,对一些留言进行回复,对一些无用的留言进行删除或者不回复。4.2功能模块实现4.2.1管理员登录实现管理员登录主要是为了让系统更好的管理,让一个管理员可以及时的添加、删除以及更新车次及站点信息,是广大用户能够及时准确的了解最新的公交车及站点信息,不会使广大用户乘坐错误的公交车耽误用户的时间,使用户能够更舒服的享受本系统带给用户的方便。管理员登陆后输入正确的管理员名、密码以及验证码后就可以进入到管理员操作界面,在操作界面中可以对一些用户留言进行回复以及删除。管理员登录界面如图4-1所示。图4-1 管理员登录界面相应核心代码:private void login(HttpServletRequest request,HttpServletResponse response)Connection conn=null;Statement stmt=null;ResultSet rs=null;HttpSession session=request.getSession(true);/如果用户session为空重新分配一个新的session给用户DBConnection2 db=DBConnection2.getInstance();String adminname=request.getParameter("adminname") =null ? "" : request.getParameter("adminname");adminname =exChange(adminname);/字符串乱码处理String password = request.getParameter("password") = null ? "" : request.getParameter("password");password=exChange(password);/字符串乱码处理String sql=""String rand=(String) session.getAttribute("rand");String input=request.getParameter("vaild");int n=0;tryconn = db.getConnection();stmt = conn.createStatement();sql = "select * from administrator where adminiID = '"+adminname+"' and adminipassword = '"+password+"'"rs=stmt.executeQuery(sql);if(rs.next() && rs!= null)n+;if (n >0 && input.equals(rand)session.setAttribute("adminname", adminname);session.setAttribute("adminpassword", password);session.removeAttribute("rand");response.sendRedirect("loginSuccess.jsp");elseresponse.sendRedirect("error.jsp");catch(Exception e)e.printStackTrace();finallytryif(stmt!=null)stmt.close();db.freeConnection(conn);catch(Exception ee.printStackTrace();4.2.2站点和车次查询(1)商厦查询:商厦查询是为用户提供按具体的名称(如:派拉蒙)查询,并显示到这个地点所有公交车车次的相关信息(如:车号,站点名称,票价,车子的档次和这个商厦的名称等信息)。商厦信息查询结果如图4-2所示。图4-2 商厦查询相应核心代码:public ArrayList queryPlace(String placeName,String page) ArrayList arrayList = new ArrayList();DBConnection2 db=DBConnection2.getInstance();Connection conn=null;Statement stmt=null;ResultSet rs=null;String sql=""try if (placeName != null) if (!placeName.equals("") placeName = exChange(placeName);/字符串转码int m = (Integer.parseInt(page) - 1) * pageSize;int i = 0;sql="select businfo.busnum,stinfo.stname,ticketnote,buslevel,note from stinfo,businfo,busst where busst.stid = stinfo.stid and businfo.busnum = busst.busnum and busst.stid in (select stid from stplace where placesid in (select placesid from publicplace where placesname = '"+placeName+"')"conn = db.getConnection();stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);rs = stmt.executeQuery(sql);if (rs.first() rs.absolute(m + 1); /将游标放到指定位置再加1(也是开始的第一条记录的序号)while(i < pageSize && rs != null && !rs.isAfterLast()HashMap hashMap = new HashMap();hashMap.put("busnum",""+rs.getInt("busnum");/将从数据库中查出的值放入hashMap.put("stname",rs.getString("stname");hashMap.put("ticketnote",rs.getString("ticketnote");hashMap.put("buslevel",rs.getString("buslevel");hashMap.put("note",rs.getString("note");arrayList.add(hashMap); /将所有的hashmap放入arrayListrs.next();i+; catch (Exception e) e.printStackTrace(); finally try if (stmt != null) stmt.close();db.freeConnection(conn); catch (Exception e) e.printStackTrace();return arrayList;(2)线路查询:线路查询是为用户提供一个按公交车的车号(如:1路)查询,并显示该公交车的相关信息(如:公交车的起点站、终点站、票价和车子的档次等信息)。线路查询结果如图4-3所示。图4-3 车次信息查询相应核心代码:public ArrayList statisticsByBusInfo(String busNum,int page) ArrayList arrayList = new ArrayList();DBConnection2 db = DBConnection2.g