《基于JSP的公交线路查询系统的设计与实现毕业设计论文.doc》由会员分享,可在线阅读,更多相关《基于JSP的公交线路查询系统的设计与实现毕业设计论文.doc(40页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、分类号:TP315 U D C:D10621-408-(2012)xxxx-0密 级:公 开 编 号:zzzzzzzzz成都信息工程学院学位论文基于JSP的公交线路查询系统的设计与实现论文作者姓名:申请学位专业:计算机科学与技术申请学位类别:工学学士指导教师姓名(职称):论文提交日期:毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和
2、做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个
3、人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名:日期: 年 月 日导师签名: 日期: 年 月 日基于JSP的公交线路查询系统的设计与实现摘 要公交查询系统是城
4、市道路交通的重要组成部分,是城市发展的必然产物。城市公交查询系统的发展处于一个较落后的水平,人们可以获得信息的方式较少,为了解决这种问题,需要大力发展我国公交线路查询系统。本文首先对公交查询系统的需求进行分析,包括功能需求和非功能需求;接着介绍了系统总体设计思路、方案选择和数据库设计;随后详细阐述了系统主要功能模块的实现过程;最后给出系统的测试方案。本公交查询系统主要具有公交查询、用户留言、用户管理和车次管理。公交查询包括车次、站点、换乘等方案的查询;用户留言主要是了解用户的留言信息,以方便管理员根据用户提供的留言信息或是提出的建议对系统进行完善;用户管理主要是删除用户信息和修改用户注册的基本
5、信息;后台车次管理能主要是添加车次和站点、更新车次和站点、删除车次和站点。本系统基于B/S模式开发,采用JSP技术,SQL Server 2000构建后台数据库。关键词:JSP;SQL Server 2000;公交线路查询;B/SBased on JSP bus lines inquires the system design and implementationAbstractBus inquires the system is the urban road traffic, is an important part of the inevitable outcome of the urba
6、n development. The development of city bus query system in a relatively backward level, people can get information, the way to solve this problem is less, the need to develop our bus lines inquires the system.In this paper, first bus query system needs were discussed, including functional requiremen
7、ts and the function demand; Then it introduces the whole system design idea, plan selection and database design; Then illustrates the system the realization process of the main function modules; Finally give system test scheme. This bus inquires the system mainly has the bus inquiry, user message, t
8、he user management and back-office train journeys management functions. Bus inquires run number, site, including transfer of query; such scheme User message is mainly collect user information, to facilitate the message provided by user message information or advice on system modified and perfected;
9、User management function mainly delete a user information and modify user registration of the basic information; Backstage main function is to add train management site function, updated train and train and site function, delete trains and stations function. This system based on B/S model developmen
10、t, using the JSP technology, SQL Server 2000 construct backend database. Key words: JSP; SQL Server 2000; Bus lines inquiry; B/S目 录 论文总页数:29页1 引言11.1 选题背景11.2 国内外研究现状11.3 本课题研究的意义11.4 本课题的研究方法21.5 开发环境及技术简介21.5.1 JSP基础知识21.5.2 JDBC31.5.3 Java Servlet41.5.4 开发环境41.5.5 主要工作42 系统需求分析42.1系统调研42.2系统目标42.
11、3 系统的功能需求52.3.1 系统需求描述52.3.2 系统数据流图52.3.3 系统的功能52.4 系统非功能需求72.4.1 精度72.4.2 安全性要求72.4.3 时间特性要求72.4.4 灵活性73 系统设计73.1 系统总体设计73.2 系统方案选择83.3 系统数据库设计113.3.1数据库设计113.3.2 系统E-R图113.3.3 数据库表结构124 系统实现144.1 用户登录模块144.2 个人信息管理模块164.3 公交系统查询模块164.3.1 车次信息查询164.3.2 站点信息查询174.3.3 公交换乘方案查询194.4 站点信息管理模块204.4.1 删除
12、站点204.4.2 添加站点214.5 车次信息管理模块214.5.1 删除车次214.5.2 添加车次224.6 留言板模块234.6.1 发表留言234.6.2 查看留言234.6.3 删除留言235 系统测试与分析245.1 测试概述245.1.1 测试目的245.1.2 测试原则255.1.3 测试方法255.2 测试用例255.3 测试分析26结 束 语26参考文献27致 谢28声 明291 引言1.1 选题背景近十几年来,我国汽车工业蓬勃发展,特别是家用轿车的增长。发展中国家用轿车市场,其规模与速度必须与城市基础建设同步,如果一味追求发展速度将造成很多大城市严重的交通堵塞问题,而且
13、还将给社会带来一系列不良后果,如加大社会经济成本,增加能源消耗,恶化城市空气,增加交通事故等等。因此,在发展我国的汽车工业的同时要注意到城市公共交通存在的意义和作用,加大国家在公共交通方面的投入,全面规划、统筹安排、合理配置、科学管理,使城市道路流畅、方便、安全、有效、可靠。然而,随着公共交通的快速发展,会逐渐地出现越来越多的公共汽车和不同的公交路线,这样会使人们对各条公交路线的信息掌握的不是很清楚。而城市公交查询系统主要任务就在于对各条路线的信息查询,和对整个公交线路信息进行相关的管理。使用公交查询系统人们就可以找出一条最适合于自己的线路,减少不必要的坐车时间。所以城市公交查询系统的前景非常
14、乐观。1.2 国内外研究现状目前,国内外公交查询系统都发展到了一个比较成熟的阶段,无论是从理论上还是从技术上都比较成熟。国外公交查询系统更是早已经实现了智能化、信息化、社会化。据相关资料了解,国外的公交查询系统现在已经将GIS、GPS、RS技术集合到公交查询系统中。GIS技术:即Geography Infomation System,地理信息系统。简单说就是将地图与数据库相结合。GPS技术:即Globe Position System,全球定位系统,通过每3颗卫星确定一个点的经纬度坐标,使用WGS_1984坐标系 。RS技术:Remote Sensing,遥感。通过卫星或飞机接收地面反射波普,
15、判断地面情况的技术。现在国内的公交查询系统也结合了很多技术,比如:基于ASP.NET+XML的公交查询系统,基于J2ME的公交查询系统,基于WebGIS公交查询系统。国内公交查询系统也正在向将GIS、GPS、RS技术相结合的方向发展。虽然现在国内公交查询系统技术上已经发展到了一定阶段,但是管理上还缺乏一定的规范,还有待进一步的规范和完善。1.3 本课题研究的意义本项目研究的基于JSP的公交查询系统,包括公交查询系统的大部分功能,并提供了用户留言的功能,以方便根据用户提供的留言信息或是提出的建议对系统进行修改和完善,并提供了管理员用户后台维护公交信息的功能,做到能够实时添加和删除公交车次站点,为
16、用户查询提供更准确的信息。1.4 本课题的研究方法公交车查询管理系统是针对广大用户设计的一个典型数据库开发应用程序,由前台管理模块,后台管理模块,数据管理模块组成。该系统是基于JSP技术的开发环境下编写而成,后台选用数据库系统是SQL.sever2000。 本系统采用B/S结构客户端:1) 管理员通过登录页面来管理公交 线路的更改,如添加、删除等;2) 非管理人员访问页面,通过输入起点终点来查询车次和经过的线路; 3) 用户点击查询后浏览器向服务器发送查询条件。服务器端:1) 运行登录程序来验证访问者的身份是否为管理员,若为管理员则生成管理页面;2) 接受用户发送来的查询条件送入数据库查询,将
17、数据库返回的内容送往客户端;公交查询系统是一个根据现在社会发展形式所形成的,为乘客和公交公司提供方便的一个平台。该系统属于B/S模式,前台页面操作调用后台的数据库,完成对数据的添加,删除,修改,查询的操作。该系统初步分为两个大模块:前台管理模块、后台管理模块。每个模块之间都不是相互独立的,他们对数据库的访问都是有一定的权限的,各个模块访问的是同一个数据库,只是所访问的表不同而已。每个模块的功能都是按照在实际调研中搜集的资料进行编排制作的依据上述功能的分析,前台管理模块:该模块有许多子模块功能,需要完成对用户的注册、查询功能,是用户接触的第一个界面,有着很重要的作用。用户留言模块:该模块需要对客
18、户反馈的信息进行处理,实现与用户进行沟通和交互的功能。后台管理模块:该模块有许多子模块功能,对用户、站点、线路等一系列的内容进行添加、删除、修改。1.5 开发环境及技术简介1.5.1 JSP基础知识JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一
19、起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP与JavaServlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。JSP技术让动态网面更易编写,功能更强,可移植性更好。概括起来,JSP的设计目标主要有以下几点:1) 一次编写,到处运行2) 加强组件能力3) 作为Java企业平台的门户4) 更容易建立动态页面JSP2.0是对JSP1.2版本的升级,其中增加了一些新特性。JSP2.0的设计目标是使动态网页的设计、开发和维护更加容易,网页编写者不必懂得Java编程语言,也可以编写JSP网页
20、。JSP2.0增加了一种称为SimpleTag的扩展机制来简化标签API(Tag API)。JSP2.0引入的最主要的新特性包括2:1) 引入简单表达式语言(EL,Expression Language),它用于JSP页面中的数据访问。这种表达式语言简化了JSP中数据访问的代码,不需要使用Java Script或者Java表达式。2) 引入创建自定义标签的新语法,该语法使用.tag和.tagx文件,这类文件可由开发人员或者网页作者编写。3) 对XML语法做了实质性的改进,增加了新的标准文件扩展名(.tagx用于标签文件,.jspx用于JSP文件)。1.5.2 JDBC JDBC(Java Da
21、ta Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,同时,JDBC也是个商标名。有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBC API,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只
22、需用JDBC API写一个程序就够了,它可向相应数据库发送SQL调用。同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。1.5.3 Java ServletJava Servlet使用的是一种请求/响应机制,也就是说通过特定的Java程序设计技术,由该Servlet动态产生的响应向某一特定的请求做出响应。Servlet所能应用的请求/响应场合很多,但常用的还是在Web应用程序中用于产生超文本传输协议响应(HTTP)。据此,Servlet可能取代其他类型的HTTP请求/响应机
23、制,譬如通用网关接口(CGI)脚本。1.5.4 开发环境本系统的开发采用JSP、Servlet、JavaScript、JDBC等技术。本系统使用MyEclipse8.6作为开发环境, Tomcat 6.0作为Web服务器。数据库采用SQL Server 2000。1.5.5 主要工作本文主要综合介绍整个系统。第一部分为引言,主要对系统开发的意义和系统的开发环境、开发技术进行介绍;第二部分为系统需求分析,主要描述系统的研究情况,还有系统功能需求和系统其他功能需求,简单的介绍了系统的主要功能模块,包括用户登录、公交查询、留言管理和管理员维护等模块;第三部分为系统设计,主要解释了系统结构设计、方案的
24、选择和系统数据库的设计;第四部分为系统功能模块的实现,描述了各个功能模块的实现,并给出关键模块的实现代码以及运行的效果截图;第五部分对系统做了整体测试,给出系统功能测试用例表。2 系统需求分析2.1系统调研在公交信息化发展中已经有了公交查询系统,但是有很多系统没有后台的维护管理功能,公交信息不能实时的更新,本系统提供了管理员进行添加、删除车次站点等功能,并提供了用户留言的功能,更加具有实时性和人性化,使公交公司能够对用户提供的留言信息和提出的建议对系统进行修改和完善。2.2系统目标本项目设定的目标如下:1) 方便用户更好地掌握公交信息;2) 适应未来公共交通及社会交通模式快速变化的要求,适应公
25、交运输体制改革的要求、适应公交服务向更高层次发展的要求。3) 为未来智能公交系统查询系统以及开发基于更广大用户的开放式的网络查询系统打下基础。2.3 系统的功能需求2.3.1 系统需求描述系统需求:公交查询系统需要满足来自两方面的需求,分别是查询公交系统的普通用户,后台维护管理人员。查询公交系统的普通用户的需求是查询城市公交线路、站点和换乘方案等信息。后台管理人员对后台数据库进行操作,可以添加公交线路站点和更改已经有的公交线路和站点。在公交查询系统开发时应该满足以下具体的系统需求:1) 满足用户查询公交信息的需求。2) 满足后台管理人员更改公交线路站点等信息的要求。3) 让使用该系统的用户能够
26、简单操作,快速查询。2.3.2 系统数据流图系统数据流图如图2-1所示。管理员登录车次管理用户登录用户注册账号线路管理留言删除用户车辆信息库线路信息留言本站点管理站点信息公交车查询用户图2-1系统数据流图如图所示,普通用户注册登录后,可进行公交信息查询、留言;管理员登录系统后,可进行车次管理、站点管理、线路管理、删除留言等操作。2.3.3 系统的功能系统功能模块图如图2-2所示。公交查询系统用 户留言管理线路站点管理查询查看留言删除留言删除路线删除站点查看信息留言添加站点添加路线管 理 员查看留言留言管理留言管理图2-2系统功能模块图基于系统需求分析,以下为该系统的相信基本功能:1) 用户登录
27、进入系统后用户选择自己的身份,通过输入自己的用户名和密码进入哥子的页面,从而进行各自所需操作。2)公交系统查询普通用户登录后可以根据自己需求进行公交查询。此系统分为车次查询、站点查询和查询公交换乘查询。车次查询即为根据车号查询车次经过的站点,并显示该车次起点、终点、票价等基本信息;站点查询为经过该站点的车次信息;公交换乘方案查询即分别输入起始站点和目的站点并查询公交乘车方案。3) 留言板普通用户登录后,可以进入留言版,用户可以提出自己的一些看法意见和建议,以供公交管理人员根据用户建议更加完善本系统。4) 用户个人信息管理用户登录后即可进入到用户的个人界面,在个人界面中,用户可以查看个人详细信息
28、,包括用户名账号,注册邮箱等信息,最后注销登录返回到系统登录界面。5) 站点和车次信息管理管理员登录系统后进入相应管理员界面,在管理员界面中,可对公交站点信息和车次信息进行实时修改,实时更新公交变动信息。2.4 系统非功能需求2.4.1 精度本系统所需的数据类型主要包括用户名、密码等。相关精度要求如下:用户名:英文和数字组合,以英文开头。例如:“ch123”密码:5到12位密码。例如“ch123”2.4.2 安全性要求本系统的用户分为管理员和普通用户两类,用户登录时需要根据功能选择框选择自己的需要,每个用户都有自己的用户名和密码。2.4.3 时间特性要求响应时间:一般操作的响应时间应在12秒内
29、。2.4.4 灵活性对设备的要求较低,且具有良好的可移植性,用户可以方便、快捷地使用该系统。3 系统设计3.1 系统总体设计本系统设计使用了面向对象技术和模块化技术:面向对象技术是一种软件开发和程序设计技术,其所开发的程序是面向对象程序,直接描述客观世界的对象及其相互关系。对象是封装了数据和操作的程序块。所谓封装是为这个程序块建立显示的界面,其它对象只能向这个界面发消息,不能访问内部的私有数据和操作。因此,内部的数据和实现操作的算法若有改动,对其它程序对象没有任何影响。封装使程序局部化、易修改、好维护,但许多对象有相同的功能时免不了重复,所以面向对象技术有继承的机制。此外,由于对象自己操作自己
30、的数据,对同一消息不同的对象均以自己的方式响应,使得一种消息可有多种响应方式,这就是多态性。封装、继承、多态是面向对象程序的主要特征。正是这些特征使程序安全、可靠、可重用、易维护。因而面向对象技术也成为当今计算机的新兴技术。模块化技术是指解决一个复杂问题时自顶向下逐层把系统划分成若干模块的过程,有多种属性,分别反映其内部特性模块化每个模块完成一个特定的子功能,所有的模块按某种方法组装起来,成为一个整体,完成整个系统所要求的功能。模块具有以下几种基本属性:接口、功能、逻辑、状态,功能、状态与接口反映模块的外部特性,逻辑反映它的内部特性。在系统的结构中,模块是可组合、分解和更换的单元。本系统通过模
31、块化技术,将系统分为管理员和用户两个大的模块,用户方面可以分为查询和留言等小模块,而管理员方面又分为公交线路、站点和留言处理等小模块的操作,通过面向对象技术,各个模块之间互不影响,各自实现自己的功能。系统总体流程如图3-1所示。开始用户登录普通用户或者管理员NY用户名和密码是否正确普通用户进入普通用户主界面查询留言等操作管理员进入管理员主界面进行添加删除查询等操作退出系统结束Y用户名和密码是否正确N图3-1 系统流程图图3-1详细描述了公交系统的整体操作流程。首先用户进行登录,选择身份是普通用户或者管理员,如果用户名和密码正确则进入到相应的用户个人界面,否则返回登录界面重新进行登录。在用户个人
32、界面,用户可以进行各自需要的操作。若用户为普通用户,则可以进行查询公交信息,留言,注销和更改个人信息等操作;用户为管理员,可以对公交线路进行管理。最后,用户操作完毕,可以退出本系统,整个系统操作流程到此结束。3.2 系统方案选择目前比较流行的系统软件开发技术有ASP、.NET或JSP(Java Server Pages)与WEB数据库相结合两种,分别由微软和SUN公司开发的一种动态网页语言。都是非常完备的开发技术。目前网络上和各大文献也对两者进行了比较,其中各有优缺点。JSP和ASP在结构上类似,都是以“”作为标计符,不同的是在标计符之间的代码ASP为JavaScript或VBScript脚本
33、,而JSP为JAVA代码。JSP将网页的表现形式和服务器端的代码逻辑分开。作为服务器进程的JSP页面,首先被转换成servlet(一种服务器端运行的java程序)。Servlet支持HTTP协议的请求和响应。当JSP被转换成纯JAVA代码。多个用户同时请求一个jsp页面时,应用实例化线程来响应请求。这些线程由WEB服务器进程来管理,和ASP的线程管理器功能类似。同CGI为每个请求创建一个进程的模式比较,这种方式效率高的多。在ASP或JSP环境下,HTML代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。普通的HTML页面只依赖于WEB服务器,而ASP和JSP页面需要附加的语言引擎分
34、析和执行程序代码。程序代码的执行结果被重新嵌入到HTML代码中,然后一起发送给浏览器。ASP和JSP都是面向WEB服务器的技术,客户端浏览器不需要任何附加的软件支持。ASP的编写语言是基于VB的脚本语言,JSP使用的是JAVA,这是两者最明显的区别。ASP与JSP还有一个更为本质的区别:两种语言引擎用完全不通的方式处理页面中嵌入的程序代码。在ASP下,基于VB的脚本代码被ASP引擎解释执行;在JSP下,代码被编译成Servlet并由JAVA虚拟机执行,这种编译操作仅在对JSP页面第一次请求是发生。动态语言JSP和ASP在性能上的比较如表3-1所示。表3-1 JSP与ASP性能对比表性能JSPA
35、SP运行速度快较快运行损耗较小较大难易程度容易掌握简单运行平台绝大部分平台Windws平台扩展性好较好安全性好较差函数支持多较少数据库支持多多厂商支持多较少对XML的支持支持不支持对组件的支持支持支持对分布式处理的支持支持支持应用程度较广较广由上表我们可以很直观的发现JSP具有运行速度快,运行耗损小,安全性,扩展性好,等都更比ASP.NET更具优越性。两者中, JSP 应该是未来发展的趋势。而数据库选用SQL Server 2000: 1) 高性能设计,可充分利用WindowsNT的优势。2) 系统管理先进,支持Windows图形化管理工具,支持本地和远程的系统管理和配置。3) 强壮的事务处理
36、功能,采用各种方法保证数据的完整性。4) 支持对称多处理器结构、存储过程、ODBC,并具有自主的SQL语言。 SQLServer以其内置的数据复制功能、强大的管理工具、与Internet的紧密集成和开放的系统结构为广大的用户、开发人员和系统集成商提供了一个出众的数据库平台。当前,主流的抽象WEB应用体系结构主要有两种:即C/S 客户机/服务器结构以及B/S 浏览器/服务器结构。C/S(Client/Server)结构,即大家熟知的客户机和服务器结构。即客户机/服务器网,Client/Server。在客户机/服务器网络中,服务器是网络的核心,而客户机是网络的基础,客户机依靠服务器获得所需要的网络
37、资源,而服务器为客户机提供网络必须的资源。C/S 模式的优点: 由于客户端实现与服务器的直接相连,没有中间环节,因此响应速度快;操作界面漂亮、形式多样,可以充分满足客户自身的个性化要求;C/S结构的管理信息系统具有较强的事务处理能力,能实现复杂的业务流程。C/S 模式的缺点:需要专门的客户端安装程序,分布功能弱,针对点多面广且不具备网络条件的用户群体,不能够实现快速部署安装和配置; 兼容性差,对于不同的开发工具,具有较大的局限性。若采用不同工具,需要重新改写程序;开发成本较高,需要具有一定专业水准的技术人员才能完成。B/S(Browser/Server)结构即浏览器和服务器结构。用户可以通过W
38、WW浏览器去访问Internet上的文本、数据、图像、动画、视频点播和声音信息,这些信息都是由许许多多的Web服务器产生的,而每一个Web服务器又可以通过各种方式与数据库服务器连接,大量的数据实际存放在数据库服务器中。B/S结构的优点:具有分布性特点,可以随时随地进行查询、浏览等业务处理;业务扩展简单方便,通过增加网页即可增加服务器功能;维护简单方便,只需要改变网页,即可实现所有用户的同步更新;开发简单,共享性强。B/S 模式的缺点:个性化特点明显降低,无法实现具有个性化的功能要求;页面动态刷新,响应速度明显降低;功能弱化,难以实现传统模式下的特殊功能要求。比较C/S和B/S优缺点发现,B/S
39、模式具有分布性特点,可以随时随地进行查询处理。这对于公交系统查询是很好的平台,而且操作简单。结合本系统实际情况,我选择采用B/S模式。因此,本系统开发选用JSP+SQL Server方案,基于B/S模式开发。3.3 系统数据库设计3.3.1数据库设计数据库是信息系统的核心和基础,把信息系统中大量的数据按一定的模型组织起来,提供存储、维护、检索数据的功能,使系统可以方便、及时、准确地从数据库中获得所需的信息。数据库是信息系统的各个部分能否紧密地结合在一起以及如何结合的关键所在。因此,数据库设计是信息系统开发和建设的重要组成部分。本系统数据库表有administrator表、BusInfo表、Bu
40、sSt表、message表、StInfo表、userInfo表等共6张表。其中administrator表为管理员表,保存有管理员名和密码信息;BusInfo表为车次信息表,保存有起点站和终点站信息;BusSt表为每个车次中间站点与车次线路的关联表;message表为用户留言信息表;StInfo表为站点表,存有本系统所有的站点;userInfo表为用户表,保存有用户的注册信息。3.3.2 系统E-R图1) 用户实体及属性如图3-2所示。用户用户名密码年龄地址邮箱提示问题提示答案证件号码图3-2 用户实体及属性2) 管理员实体及属性如图3-3所示。管理员管理员账号密码 图3-3 管理员实体及属性
41、3) 留言板实体及属性如图3-4所示。留言板用户名留言时间留言标题留言内容邮箱地址留言ID 图3-4 留言板实体及属性4) 车次和站点之间关系如图3-5所示。车次信息终点站票价起点站车子档次车号票价档次站点信息站点号站点名称经过车号站点次序站点号图3-5 车次与站点之间关系3.3.3 数据库表结构1) 用户表userInfo如表3-2所示。表3-2 用户表信息列名中文名称数据类型长度允许空username用户名varchar50Not nulluserpassword用户密码varchar50Not nulluserage用户年龄int4nulladdress地址varchar50nullem
42、ail邮箱varchar50nullquestion问题varchar50nullanswer答案varchar50nullidnum证件号varchar50null2) 管理员表administrator如表3-3所示。表3-3 管理员信息列名中文名称数据类型长度允许空adminiID管理员名varchar50Not nulladminipassword密码varchar50Not null3) 车次信息表BusInfo如表3-4所示。表3-4 车次信息表列名中文名称数据类型长度允许空BusNum车号int4Not nullbeginStid起始站号int4nullBeginSt起点站var
43、char50Not nullendStid终点站号int4nullEndSt终点站varchar50Not nullTicketNote票价varchar50nullBusLevel车子档次Varchar50nullNote票档次varchar50null4) 站点信息表StInfo如表3-5所示。表3-5 站点信息表列名中文名称数据类型长度允许空StID站点号Int4Not nullAtName站点名称Varchar50Not null5) 中间站点关联表BusSt如表3-6所示表3-6 站点信息表列名中文名称数据类型长度允许空id编号int4Not nullBusNum车号int4Not
44、nullStID站点号int4Not nullStOrder站点序号int4null6) 留言信息表message如表3-7所示。表3-7 留言信息表列名中文名称数据类型长度允许空username用户名varchar50Not nullmessagedate留言日期datetime8Not nulltopic留言主题varchar50Not nullemail邮箱varchar50nullmessagetext留言内容varchar250Not nullid留言序号int4Not null4 系统实现4.1 用户登录模块1) 模块功能描述该系统的用户分为普通用户或管理员,他们各自有自己的登录名和密码,用户进入后,进入到自己的登录界面,输入相应的用户名和密码,如果登录成功后,即可进入到相应的个人界面,否则将给予出错信息,并返回登录界面。2) 用户登录流程如图4-1所示。开始用户登录普通用户或者管理员普通用户管理员用户名和密码是否正确用户名和密码是否正确Y进入普通用户主界面Y进入管理员主界面结束NN图4-1 用户登录流程图3) 关键代码实现