长途汽车信息管理系统的设计与实现_第1页
长途汽车信息管理系统的设计与实现_第2页
长途汽车信息管理系统的设计与实现_第3页
长途汽车信息管理系统的设计与实现_第4页
长途汽车信息管理系统的设计与实现_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、河北联合大学综合课程设计 第 39 页 共 39 页一、绪论1、引言1.1设计目的在信息技术高度发达的今天,传统手工记录客运站信息,已满足不了正常需求。怎样是的管理员人方便的处理这些信息,降低他们的工作量是一个需要解决额问题。借助计算机来完成这些大量冗杂的工作。能大大降低管理员的工作强度。这里开发一长途客运站的班车信息管理系统,旨在为客运信息管理员提供一个可行法案。通过利用计算机上的程序,按规范管理长途客运信息。方便查询班车线路情况、各个班次的售票情况,以及每个班次的班车信息。方遍管理员的查询,及修改长途汽车线路信息,汽车信息,和车票信息。将录入操作交给电脑来完成。这样既能减少管理员工作量还能

2、满足日益增长的需求。也借以说明计算机技术在当今世界发展中的重要地位和科技创新的重要意义。1.2项目背景本程序的开发课题为“某长途客运站信息管理系统”。主要使用的软件有Jcreator、jdk1.7和Tomcat6.0。使用软件工程的设计思路,来开发一套使用的软件。从分析用户需求开始、模块划分、建立数据库、代码设计、调试最后完成。主要针对的使用者时客运信息管理员(负责本客运站的线路加减以及售票)。由于本程序有些功能善待完善,不足之处请见谅。2、任务描述2.1目标本次程序设计应实现长途客运管理系统的基本功能,并达到一定的健壮性和安全性。目标包括,客运汽车信息的管理(新进车辆都录入包括车牌号,汽车编

3、号,以及最大载客量和负责该车的司机师傅)。线路信息的管理(新增运营线路录入线路号,始末站点,发车时间等信息)。售票信息查询以及管理员信息管理系统。除此之外,对查询的优化处理也是必要的,这样可以提高运行效率。2.2运行环境软件环境:操作系统:Win 7开发工具: Tomcat 6.0 jdk1.7 Jreator使用编程语言:Java3、数据描述3.1输入数据1)添加车辆:车辆编号、载客量、车牌号、司机。车辆编号:为3为数字载客量:为(50-100)数字车牌号:为国内标准车牌号如(冀BT00001)司机:姓名(varchar(20)2)添加线路信息:线路号、始发站、终点站、车辆编号、发车日期、发

4、车时间、耗时和票价。 线路号:L+(3为数值)始发站和终点站:城市名称(varchar(20)车辆编号:为3为数字(且存在于数据库内)发车日期:格式为2012/12/23发车时间:小时:分钟(如9:00)。小时(0-24),分钟(0-60)。耗时:小时:分钟(如9:00)。小时(大于0),分钟(0-60)。票价:大于零的整数3)添加管理员信息:账号和密码 账号:长度20以内字符(varchar(20)密码:长度20以内字符(varcha(20)3.2输出数据1)查询现有车辆:车辆编号、载客量、车牌号、司机。2)查询现有线路信息:线路号、始发站、终点站、车辆编号、发车日期、发车时间、耗时和票价。

5、3)查询售票情况:线路号、总票数、余票。4)查询现有管理员信息:账号和密码。4、功能要求用户提出的及一般软件都应具有的功能(如输入、输出、修改、查询等)通过对用户反馈的需求进行分析本系统具有如下功能:1)汽车信息管理管理员可以在汽车信息管理模块对汽车信息进行管理,管理员可以添加、修改和删除本客运站的汽车信息。该模块还可以查看现有汽车的信息。2)线路信息管理管理员可以在线路信息管理模块对线路信息进行管理,管理员可以添加、修改和删除本客运站运营的线路。线路信息包括:出发站、目的地、发车时间、以及运营该线路的汽车班次号。这里的汽车必须是数据库已经存在的汽车。3) 车票信息管理该模块记录各个班次的售票

6、情况,包括总票数,和余票情况。4) 管理员信息管理该模块可以添加新的管理员,以及显示已有管理员信息。二、需求分析1、需求调查11组织机构调查长途客运站长途运输公司公路管理局公路运输管理交通局图 1组织机构图本程序是为长途客运站开发的,使用对象是客运站管理员。主要负责录入新车,添加新的运行线路以及售票。12 业务需求调查1)登入验证选择业务长途汽车管理系统自动显示车辆信息车辆信息添加、删除车辆修改车辆信息线路信息自动显示线路信息线路线路信息添加、删除车辆管理员信息售票信息显示售票情况显示管理员信息修改管理员信息添加、删除车辆在进入系统时,要求对管理员身份进行验证。要求输入账号、密码。只有数据库中

7、拥有的管理员才能进入。 2)业务管理如图:图 2整体业务流程图13对软件系统的要求调查对本次管理系统样例的要求有:1)存在管理员,只有通过验证才能进入系统。2)可以添加新的管理员。3)可以录入新的车辆信息。4)可以开通运营新线路。5)可以查询售票情况,订票。6)预留更新接口以添加新功能。2、功能需求21功能划分 程序主要包括登入界面和操作界面,登入界面用来对管理员进行身份验证,只有在数据库中的管理员才允许进入操作界面。操作界面包括:汽车信息管理、线路信息管理、车票信息管理和管理员信息管理。管理员通过登陆界面验证之后进入操作界面后,可以查询可添加车辆信息、线路信息和售票信息。线路信息包含:线路号

8、(即车次)、始发站、终点站、发车日期、发车时间、耗时,同时还会显示该线路的余票以及票价(票售完的不显示)。允许进行订票。车辆信息主要包括:大巴车编号、最大载客量、车牌号以及驾驶员。售票信息:线路号、该线路总票数、余票。管理员信息:现有管理员的账号信息。22功能描述用户提出的及一般软件都应具有的功能(如输入、输出、修改、查询等)通过对用户反馈的需求进行分析本系统具有如下功能:1)汽车信息管理管理员可以在汽车信息管理模块对汽车信息进行管理,管理员可以添加、修改和删除本客运站的汽车信息。该模块还可以查看现有汽车的信息。2)线路信息管理管理员可以在线路信息管理模块对线路信息进行管理,管理员可以添加、修

9、改和删除本客运站运营的线路。线路信息包括:出发站、目的地、发车时间、以及运营该线路的汽车班次号。这里的汽车必须是数据库已经存在的汽车。3) 车票信息管理该模块记录各个班次的售票情况,包括总票数,和余票情况。4) 管理员信息管理该模块显示现有管理员信息。以下为实现功能的数据流图:图 3数据流程图3、数据描述31数据描述1)车辆信息:车辆编号、载客量、车牌号、司机。2)线路信息:线路号、始发站、终点站、车辆编号、发车日期、发车时间、耗时和票价。3)售票信息:线路号 、总票数 、余票 、票价 。4)添加管理员信息:账号和密码。32数据库描述在对业务流程图和数据流程图进行详细分析的基础上,找出其中的实

10、体有管理员、线路、车辆、线路车票,根据各个实体的属性以及他们之间的联系。有E-R图描述实体及实体之间的关系(关系E-R图如下)载客数汽车号汽车车牌号始发站线路号目的地汽车号线路发车时间管理管理管理系统管理员密码账号车票总票数线路票号线路号余票图 3 实体联系E-R图33数据词典1)车辆信息车辆编号:长度为3个字符要求字符为数字(0-9),如“001”。 载客量 :整形要求(30-100)的数。 车牌号 :省份简称+市属车号字母(大写的26个字母,O除外)+5位字符字符可以是(0-9)的数值也可以是(大写的26个字母,O除外)。 司机姓名:长度为20个字符,可以不写满。2)线路信息 线路号 :大

11、写字母L+长度为3个字符要求字符为数字(0-9),如“001”。 始发站 :城市名称,长度为20个字符,可以不写满。 终点站 :城市名称,长度为20个字符,可以不写满。 发车日期:长度为10的字符串,要求年份+”/”+月+“/”+日。 年份:四位数字字符,要求大于等于当前年份 月 :两位字符1-12,不满两位的前面补“0“ 日 :两位字符1-31,不满两位的前面补“0“,注意某些月份,如2,4,6,9,11不满31天。 发车时间:长度为5的字符串,要求 小时+“:“+分钟。 小时:两位字符0-24,不满两位的前面补“0“分钟:两位字符0-60,不满两位的前面补“0“ 耗 时:长度为5的字符串,

12、要求 小时+“:“+分钟。 小时:两位字符大于等于0,不满两位的前面补“0“分钟:两位字符0-60,不满两位的前面补“0“ 大巴编号:参考车辆信息 3)售票信息线路号 :参考车辆信息。总票数 :根据线路号查到车辆编号,继而查到载客量。余 票 :整形大于等于0,小于等于总票数票 价 :整形大于0 4)管理员信息账 号 :长度为20个字符,可以不写满。密 码 :长度为20个字符,可以不写满。4、性能需求4.1数据精确度1)查询时保证查全率,所有在相应域中与查询关键字相符的记录都应能查到;2)查询时保证查准率,所有查询记录都是希望值。3)修改记录同步,不出现一方有时令一方没有的情况。4.2时间特性1

13、)小型库中的查询、修改等操作的响应时间应控制在0.5秒钟以内;2)增加数据量时也应将响应时间控制在2秒以内;3)当数据多至超出响应时间时,应提供更新以控制响应时间。4.3适应性1)满足运行环境在允许操作系统之间的安全转换要求;2)满足与其他应用软件不冲突的独立运行要求。5、运行需求5.1用户界面1)屏幕格式:多窗口运行,采用B/S,使用Jcreator和jdk1.7制作,完全兼容Windows平台。2)报表格式:符合打印要求,与常规打印机接口匹配。3)菜单格式:采用选项菜单等方式。5.2硬件接口1)需要10M以上LAN接入网络宽带。2)需要P4 3.0G Xeon CPU /1G内存/360G

14、(10K) SCSI硬盘的服务器。5.3软件接口1)运行于Windows操作系统之上;2)需要连接小型数据库Access和系统类库,使用Tomcat服务器。5.4故障处理1)用户输入错误格式时应给予改正提示;2)数据库更改错误时应自行缓和关闭并重启;3)若运行时遇到不可恢复的系统错误时,应保证数据库的完好无损;4)其它故障问题可与开发人员联系。5.5基本要求综上可知,基本要求如下:1)体系结构:B/S2)操作系统:Windows系列3)数据库管理系统:小型数据库Access4)开发工具: Jcreator、jdk1.7、Tomcat 6.05)软件需求:操作系统Windows 2000 Adv

15、ance Server以上,数据库软件Microsoft Acccess,数据库服务器端软件Tomcat 6.06)硬件需求:P3以上微机(带网卡)的客户机,10M以上的LAN接入网络带宽,P4 3.0G Xeon CPU /1G内存/1T(10K) SCSI硬盘的服务器。6 、其他需求除了基本要求,还应该确保软件的安全性:1)提供管理员的密码保护、密码修改功能;2)提供可靠的软件逻辑机制,减少外部侵入的风险。三、总体设计1、总体结构和模块设计根据业务流程图与数据流程图可画出总体功能模块结构图如下:售票信息查询现有管理员查询管理员登入系统长途汽车管理系统售票信息查询系统线路信息管理系统车辆信息

16、管理系统管理员信息管理系统现有车辆信息管理添加新车添加新的管理员现有运营线路查询添加新的运营线路图4 总体功能模块结构图其中,主要包括登陆模块,车辆信息管理模块,线路信息管理模块,售票信息管理模块和管理员信息管理模块。车辆信息管理模块下包括输入新车的编号、载客量、车牌号、司机;而线路信息管理模块下包括增加新的运营线路,该线路的的购票。售票信息管理模块包括显示所有线路的售票情况。管理员信息管理模块包括现有管理员信息管理和增加新管理员的功能。各个功能和模块的接口都如上图所示。2 、数据结构设计各层次模块的数据结构表如下:表 1 汽车信息表字段名称数据类型必填字段主键busIDnChar(3)YYb

17、usSizeIntYbusNumnChar(3)YbusDrivervarchar(20)Y表2 线路信息表字段名称数据类型必填字段主键外键lineIDnchar(4)YYstartvarchar(20)Yendvarchar(20)YDatenchar(10)YsTimenchar(5)YnTimenchar(5)YbusIdnchar(3)YY表3 售票信息表字段名称数据类型必填字段主键lineIDnchar(4)YYallNumIntYleftNumIntYpriceIntY表4 管理员信息表字段名称数据类型必填字段主键mIDvarchar(20)YYpwdvarchar(20)Y3、数

18、据库设计3.1逻辑设计数据库关系模型如下:车辆(车辆号,载客量,车牌号,司机) 线路(线路编号,始发站,终点站,发车日期,发车时间,耗时,车连编号)售票信息(线路编号,总票数,余票)管理员(管理员账号,密码)3.2物理设计数据库应存放在服务器端,保证数据库的存储空间在数据量的3倍左右,以方便数据备份和数据恢复操作。4 、外部接口设计4.1用户界面用户界面多为链接操作,插入和修改信息的操作。背景采用浅蓝色,文字采用黑色宋体字,查询结果显示在中间位置。4.2软件接口实现google浏览器或者IE与ACCESS的接口(通过Tomcat服务器)。4.3硬件接口由于存在大量的数据备份问题和报表打印问题,

19、需要连接磁带机或备份用数据库和打印机。5 、出错处理设计5.1出错处理信息1)输入格式错误,探出提示框显示“请按照固定格式输入信息”等字样;2)程序数据基本错误,探出提示框显示“系统数据错误”等字样,并安全退出程序;3)程序严重错误,探出提示框显示“请将问题发送至开发者邮箱”等字样,并强行退出程序。5.2出错处理对策1)输入不合法错误,给予正确的格式提示;2)由于程序造成的基本错误,在保护数据库安全的情况下退出程序并重新自启动,再根据日志来恢复4)定期对数据库进行备份;四、详细设计1 、代码设计服务器端:存放数据库,开启服务器Tomcat,等待管理员那边PC端的请求,根据请求内容查询数据库把查

20、询的内容传回管理员的PC端进行显示。执行一个请求结束后继续等待下一个请求。 管理员PC端:首先要通过登陆界面的验证,输入密码用户号检验成功进入操作界面,所有操作以树型结构显示界面的左边栏,数据显示在右边栏目中;点击具体操作的链接点后会把接收到的的数据显示在右边栏目中。2 、程序设计2.1模块设计1)登录模块功能:管理员输入密码和用户名点击登入,服务器检验密码和用户是否正确,正确则可以入操作界面。 性能:方便快捷;相应速度快;界面友好,带有错误提示。 输入项目:账号和密码。 输出项目:跳到登入失败或者进入操作界面。 2)车辆信息管理 功能:可以添加汽车信息,删除汽车信息,修改汽车信息,查询所有的

21、汽车信息。 性能:方便快捷;相应速度快;界面友好,带有错误提示。 输入项目:汽车编号,载客量,车牌号,司机。输出项目:保存添加或者修改后立即刷新界面显示添加后的数据。 3)线路管理 功能:可以添加路线,删除路线,修改路线,显示所有线路。 性能:方便快捷;相应速度快;界面友好,带有错误提示。输入项目:添加和修改包括线路号、目的地,出发地,出发时间,耗时,使用车辆的编号。 输出项目:线路编号,目的地,出发地,出发时间,行驶时间,余票。 4)管理员信息管理: 功能:可以添加和删除新管理员。性能:方便快捷;相应速度快;界面友好,带有错误提示。输入项目:添加和修改管理员账号和密码。输出项目:现有管理员信

22、息。2.2 算法设计 登陆部分:首先输入用户号和密码,进行验证,连接服务器的数据库检查输入的用户名是否存在并且密码是否正确,正确则可以操作,不正确显示登入失败。 车辆信息管理:点击汽车信息链接后会发送请求数据库获取所有数据库中的汽车信息,并且再右边栏目中进行显示。输入内容点击保存即可保存到数据库中;如果修改则需要选中修改的行进行修改后保存的数据库中。线路信息管理:点击线路信息链接后会发送请求数据库获取所有数据库中的线路信息,并且再右边栏目中进行显示。输入内容点击保存即可保存到数据库中;如果修改则需要选中修改的行进行修改后保存的数据库中。管理员信息管理:点击管理员信息链接后会发送请求数据库获取所

23、有数据库中的管理员信息,并且再右边栏目中进行显示。输入内容点击保存即可保存到数据库中;如果修改则需要选中修改的行进行修改后保存的数据库中2.3程序逻辑1)登入界面进入操作界面否是开始输入账号和密码验证是否合法提示失败结束图 5登入界面N-S图2)汽车信息管理、线路信息管理、管理员信息的程序逻辑如下:结束不合法合法添加否开始获取文本框信息从服务器获取车辆信息存入服务器是检验操作失败合法检验修改不合法获取文本框信息操作失败修改服务器是删除相关的所有记录否读取主键编号检验是否存在删除是失败否是否图 6 汽车信息管理、线路信息管理、管理员信息N-S图2.4接口软件接口:在这里主要考虑软件与操作系统的接

24、口,这里使用java语言开发。Jdk1.7具有较好的跨平台兼容性。除此之外,还要配置服务器端,开启服务器程序Tomcat6.0,等待可无端请求。建立连接后通过SQL语言Tomcat会自动完成对数据库的操作。硬件接口:可用的网络链接,服务器端有较大的硬盘容量,较好的CPU来提高检索速率。2.5测试要点因为开发的软件较小。可以严个测试录入数据的安全性。准备多个测试用例(实用软件测试的方法)检验系统的健壮性。同时检查形同日志,以及异常后数据库能发保持完整性。五、系统实现1登入界面设计login.jsplogin.jsp<% page contentType="text/html;ch

25、arset=ISO8859_1" %><% page language="java" import="java.sql.*" %><% page import="java.lang.Math.*,sen.DBUtilbus" %><%!String mid = ""String pwd = ""boolean flag=false;%><% if(request.getParameter("mid")!=null)&a

26、mp;&(request.getParameter("pwd")!=null) mid = new String(request.getParameter("mid").getBytes("ISO8859_1"), "GB2312"); pwd = new String(request.getParameter("pwd").getBytes("ISO8859_1"), "GB2312"); if(flag=true) %> <jsp:

27、forward page="fenp.jsp"/> <% else %> <jsp:forward page="loginfail.jsp"/> <% %><html><head></head><body background="login.jpg"><form name=form1 method="post" action="login.jsp"> 账号:<input size=&quo

28、t;20" type="text" name="mid"></input> </br> 密码:<input size="20" type="password" name="pwd"></input> </br> <input type="submit" value="确认" ></input> <input type="button"

29、; value="关闭" onclick="window.opener=null;window.close();" /> </form></body></html>2功能实现2.1数据库键表利用ACCESS建立4张需要的表:2.2界面设计标题功能选项显示页面添加处(售票信息缺此项)图 7 界面示意图标题显示:head.jsp功能选项显示:left.jsp1) 车辆信息:busifortop.jsp(包含添加处的addbus.jsp和显示处的busIfor.jsp)2) 线路信息:buslineif.jsp (包含

30、添加处的buslineiftop.jsp和显示处的busline.jsp) 3) 线路信息:saleticket.jsp4) 管理员信息:manager.jsp (包含添加处的managertop.jsp和显示处的managerbo.jsp)此外还建立了一个链接数据库的工具类DBUtilbus,一集一个接受请求的的Severlet类来处理用户请求(如购票)。 DBUtilbus类中 实现了的数据库的增删改操作。ShopSeverlet类主要响应购票请求。2.3代码实现2.3.1数据连接工具类DBUtilbus.java代码如下:public class DBUtilbus/登入验证public

31、 static boolean login(String mid,String pwd)boolean flag=false;tryClass.forName("sun.jdbc.odbc.JdbcOdbcDriver");Connection con=DriverManager.getConnection("jdbc:odbc:bus","","");Statement st=con.createStatement();ResultSet rs=st.executeQuery("select * fro

32、m manager");while(rs.next()String temp1=rs.getString(1);String temp2=rs.getString(2);System.out.println(temp1+" "+temp2);if(temp1.equals(mid)&&(temp2.equals(pwd)flag=true;break;rs.close();st.close();con.close();catch(Exception e)e.printStackTrace();return flag;/开通新航线添加新票(被addL

33、ine调用)public static void addticket(String lineID,String busID,int price)tryint num=0;String update_sql=""Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");Connection con=DriverManager.getConnection("jdbc:odbc:bus","","");Statement st=con.createStatement(

34、);update_sql="select busSize from bus where busID="+"'"+busID+"'"System.out.println(update_sql);ResultSet rs=st.executeQuery(update_sql);rs.next();num=Integer.parseInt(rs.getString(1);rs.close();update_sql="insert into ticket values('"+lineID+"

35、;',"+num+","+num+","+price+")"st.executeUpdate(update_sql);st.close();con.close();catch(Exception e)e.printStackTrace();/添加新运营路线public static void addLine(String lineID,String start,String end,String busID,String date,String sTime, String nTime,int price)tryadd

36、ticket(lineID,busID,price);String update_sql="insert into line values('"+lineID+"','"+start+"','"+end+"','"+busID+"','"+sTime+"','"+nTime+"','"+date+"')"Class.forNa

37、me("sun.jdbc.odbc.JdbcOdbcDriver");Connection con=DriverManager.getConnection("jdbc:odbc:bus","","");Statement st=con.createStatement();st.executeUpdate(update_sql);st.close();con.close();catch(Exception e)e.printStackTrace();/添加车辆public static void addbus(Str

38、ing busID,int busSize,String busNum,String busDriver)tryString update_sql="insert into bus values('"+busID+"',"+busSize+",'"+busNum+"','"+busDriver+"')"Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");Connection con=Dri

39、verManager.getConnection("jdbc:odbc:bus","","");Statement st=con.createStatement();st.executeUpdate(update_sql);st.close();con.close();catch(Exception e)e.printStackTrace();/添加管理员public static void addmanager(String mid,String pwd)tryString update_sql="insert into

40、manager values('"+mid+"','"+pwd+"')"Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");Connection con=DriverManager.getConnection("jdbc:odbc:bus","","");Statement st=con.createStatement();st.executeUpdate(update_sql);st.clos

41、e();con.close();catch(Exception e)e.printStackTrace();public static List<String> getLinet()ArrayList<String> al=new ArrayList<String>();tryClass.forName("sun.jdbc.odbc.JdbcOdbcDriver");Connection con=DriverManager.getConnection("jdbc:odbc:bus","","

42、;");Statement st=con.createStatement();ResultSet rs=st.executeQuery("select lineID,busID,start,end,Date,sTime,nTime,allNum,leftNum,price from ticket,line where ticket.tlineID=line.lineID and ticket.leftNum>0");while(rs.next()String rows=new String10;for(int i=1;i<=10;i+)rowsi-1=

43、rs.getString(i); al.add(rows);rs.close();st.close();con.close();catch(Exception e)e.printStackTrace();return al;/获取管理员信息public static List<String> getManager()ArrayList<String> al=new ArrayList<String>();tryClass.forName("sun.jdbc.odbc.JdbcOdbcDriver");Connection con=Driv

44、erManager.getConnection("jdbc:odbc:bus","","");Statement st=con.createStatement();ResultSet rs=st.executeQuery("select * from manager");while(rs.next()String rows=new String2;for(int i=1;i<=2;i+)rowsi-1=rs.getString(i); al.add(rows);rs.close();st.close();co

45、n.close();catch(Exception e)e.printStackTrace();return al;/获取售票信息public static List<String> getSalet()ArrayList<String> al=new ArrayList<String>();tryClass.forName("sun.jdbc.odbc.JdbcOdbcDriver");Connection con=DriverManager.getConnection("jdbc:odbc:bus","&

46、quot;,"");Statement st=con.createStatement();ResultSet rs=st.executeQuery("select * from ticket");while(rs.next()String rows=new String3;for(int i=1;i<=3;i+)rowsi-1=rs.getString(i); al.add(rows);rs.close();st.close();con.close();catch(Exception e)e.printStackTrace();return al;

47、/获取车辆信息public static List<String> getBusIfor()ArrayList<String> al=new ArrayList<String>();tryClass.forName("sun.jdbc.odbc.JdbcOdbcDriver");Connection con=DriverManager.getConnection("jdbc:odbc:bus","","");Statement st=con.createStatement();R

48、esultSet rs=st.executeQuery("select * from bus");while(rs.next()String rows=new String4;for(int i=1;i<=4;i+)rowsi-1=rs.getString(i); al.add(rows);rs.close();st.close();con.close();catch(Exception e)e.printStackTrace();return al;2.2请求接受类ShopSeverletpackage sen;import javax.servlet.http.*

49、;import java.io.*;import javax.servlet.*;import java.util.*;import sen.DBUtilbus;public class ShopServlet extends HttpServletpublic void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException,IOException doPost(req,resp); public void doPost(HttpServletRequest req, HttpServle

50、tResponse resp) throws ServletException,IOException HttpSession session=req.getSession(true); resp.setContentType("text/html;charset=gbk"); String action=req.getParameter("action"); System.out.println("action: "+action); if(action.equals("buy") String pid=req.

51、getParameter("pid"); DBUtilbus.bus(pid); this.forward ("busline.jsp",req,resp ); public void forward(String path,HttpServletRequest req, HttpServletResponse resp) throws ServletException,IOException req.getRequestDispatcher("/"+path).include(req,resp); 2.3操作界面2.3.1进入界面f

52、enp.jsp<% page contentType="text/html;charset=gbk" import="sen.DBUtilbus,java.util.*" %><html> <head><title>长途汽车管理系统</title></head> <frameset rows="10%,*"> <frame scrolling="no" src="head.jsp" name="t

53、op" frameborder="1" > <frameset rows="*" cols="15%,*" framespacing="0" border="5" > <frame src="left.jsp" name="left" frameborder="1" > <frame src="busline.jsp" name="main" scro

54、lling="auto"> </frameset> </frameset> </html>2.3.2标题界面head.jsp<% page contentType="text/html;charset=gbk"%><html> <head> <title>head</title> </head> <body> <h1 align="center"a><font color="&quo

55、t; size="">河北省长途汽车系统</font></h1> </body></html>2.3.3功能选项left.jsp<% page contentType="text/html;charset=gbk" import="wyf.DBUtil,java.util.*"%><html> <head> <title>商品列表</title></head> <body> <a href=&

56、quot;busifortop.jsp" target="main" >汽车信息</a></br> <a href="buslineif.jsp" target="main" >线路信息</a></br> <a href="saleticket.jsp" target="main" >售票信息</a></br> <a href="manager.jsp" ta

57、rget="main" >管理员信息</a></br> </body></html>界面样式如图:2.3.4车辆信息车辆信息样式如图:businfor.jsp<% page contentType="text/html;charset=gbk" import="java.util.*,sen.DBUtilbus"%><html> <head><title>车辆信息列表</title></head> <bo

58、dy> <% List<String> ll=DBUtilbus.getBusIfor(); if(ll.size()=0) %> <font color="red" size="20">对不起目前没有任何车辆信息!</font> <% else %> <table align="center" width="75%" border="0" bgcolor="#000000" cellpadding="1" cellspacing="1" > <caption><b>车辆信息列表</b></caption> <tr> <th bgcolor="d7d3d3">巴士号</th> <th bgcolor="d7d3d3">载客量</th

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论