长途汽车信息管理系统A.docx
《长途汽车信息管理系统A.docx》由会员分享,可在线阅读,更多相关《长途汽车信息管理系统A.docx(27页珍藏版)》请在冰豆网上搜索。
长途汽车信息管理系统A
长途汽车信息管理系统
系统功能的基本要求:
线路信息,包括出发地、目的地、出发时间、所需时间等。
汽车信息:
包括汽车的种类及相应的票价、最大载客量等。
票价信息:
包括售票情况、查询、打印相应的信息。
1.需求分析
1.1业务流程分析
长途汽车信息管理系统运用在汽车站和火车站等车站部门的系统工具,方便此系统部门的工作人员的工作,该系统主要根据此部门的特点建立的,是记录和查询汽车站信息的的依据。
早期的长途汽车站信息主要是人工记录和人工管理的,不仅不容易记录,而且还不容易保存。
随着计算机的不断普及和软件系统的不断发展加上信息系统开发的迫切需求,计算机长途汽车站信息管理系统应运而生了。
随着市场经济的不断飞速发展,交通道路环境的不断改善,人们的出行次数不断增多,人口流动频繁,数量不断加大,车站信息量迅猛增长,长途汽车站信息管理系统在人们的日常生活中发挥着越来越重要的作用。
本系统实现了汽车线路信息,汽车信息,票务信息的查询和管理,满足人们的需求。
用户管理:
用户以合法身份登入系统后,管理员可以进行系统用户的添加,密码的修改操作。
线路信息管理:
车站管理员可以在线路信息管理模块对车站线路信息进行管理。
管理员首先建立汽车线路信息数据库,输入原始的线路信息,当有新的线路需要添加或者需要对已有的线路信息进行修改,删除的时候,管理员就可以进行相应的操作。
管理员也可以通过本模块查询到所有需要查询的线路的详细信息。
汽车信息管理:
管理员可以在汽车信息管理模块实现对汽车信息的管理。
管理员首先应该建立汽车信息数据库,输入原始的数据信息,当有新的汽车信息的时候或者管理员需要修改某个汽车的相关信息以及想要删除某个汽车信息的时候,就可以完成相应的操作。
管理员也可以在整个数据库中查寻相关汽车信息。
车票信息管理:
管理员可以在车票管理模块实现对线路车票信息的管理。
管理员根据相应的汽车线路信息来设置相应的车票详细信息。
当有新的线路添加的时候,要把相应的车票信息添加到数据库中,管理员还可以对某条线路的车票信息进行修改,删除和查询操作。
1.2功能分析
程序分为登陆界面,选择界面,线路信息界面,汽车信息界面,车票信息用户注册界面这几个主体界面。
使用时应先知道管理员帐号和密码,登陆进入系统主菜单界面,里面包括线路信息,汽车信息,车票信息,用户注册,退出程序菜单选项。
其中线路信息界面包括包括出发地、目的地、出发时间、所需时间等,可以对它们进行添加,查询,删除,修改,返回主菜单的操作;汽车信息和车票信息的界面与其类似。
用户注册包括用户注册,用户修改,用户删除操作。
需要特别说明的是,当对数据进行操作时,在查询框内输入提示数据内容,对话框的表中和提示栏中都会出现所查询的数据,我们可以在提示栏中对数据进行删除和修改操作。
图1长途汽车信息系统功能模块
图2长途汽车信息管理系统数据流图
1.3数据字典之数据项
属性名
存储代码
类型
主键
备注
出发地
SP
字符
是
目的地
Des
字符
是
出发时间
ST
整型
是
如2010.09.09.16:
07
所需时间
NT
整型
否
如2.15h
汽车的种类
CT
字符
是
票价
TP
字符
否
最大载客量
MC
整型
否
售票情况
TS
整型
否
所售的票数
车票信息
TC
字符
是
2.概念结构设计
E-R图 如下:
3.数据库表设计
汽车表格设计如下:
图一
线路表格设计如下:
图二
车票表格设计如下:
图三
4.程序设计代码
importjava.sql.*;
importjava.io.*;
//importjava.sql.DriverManager;
publicclasschangtu
{
ﻩpublic staticvoid Qtitle(){
System.out.println("车次编号"+"\t汽车种类"+"\t\t载客"+"\t\t票价");
}
ﻩpublicstaticvoid Xtitle(){
System.out.println("车次编号"+"\t出发地点"+"\t目的地点"+"\t所需时间");
ﻩ}ﻩﻩﻩ
ﻩpublic static void Ctitle(){
ﻩSystem.out.println("车次编号"+"\t总售票数"+"\t剩余票数"+"\t已售票数");
}
ﻩ
publicstaticvoidmain(String[] args)
{
ﻩ
try{
ﻩClass.forName("sun.jdbc.odbc.JdbcOdbcDriver");
ﻩﻩ}catch(Exceptione){
ﻩﻩSystem.out.println("连接失败!
");
ﻩreturn;
ﻩﻩ} //连接
ﻩ
ﻩtry
ﻩ{
ﻩConnectioncon=DriverManager.getConnection("jdbc:
odbc:
changtu","sa","");
ﻩﻩStatementstmt=con.createStatement();
ﻩinta1=1;
ﻩﻩwhile(a1!
=0){
ﻩﻩﻩﻩ
ﻩﻩSystem.out.println("1.查询2.插入3.修改4.删除5.退出");
ﻩﻩSystem.out.println("请选择:
");
ﻩﻩﻩﻩinti=0;
ﻩtry{
ﻩﻩﻩBufferedReader br=newBufferedReader(newInputStreamReader(System.in));
ﻩi=Integer.parseInt(br.readLine());
ﻩﻩﻩﻩ}catch(IOExceptionex){}
ﻩﻩif(i==6)a1=0;
ﻩﻩﻩif(i==1)
ﻩﻩ{
ﻩﻩﻩﻩSystem.out.println("1.汽车查询2.线路查询3.车票查询");
ﻩﻩﻩﻩSystem.out.println("请选择:
");
ﻩintm=0;
try{
ﻩﻩﻩﻩBufferedReaderbr=newBufferedReader(newInputStreamReader(System.in));
ﻩm=Integer.parseInt(br.readLine());
ﻩﻩﻩﻩ}catch(IOExceptionex){}
ﻩif(m==1){
ﻩﻩResultSetrs=stmt.executeQuery("select bianhao,zhonglei,zaike,piaojiafromqiche");
ﻩﻩﻩQtitle();
ﻩﻩﻩﻩwhile(rs.next()){
ﻩﻩﻩﻩStringa=rs.getString("bianhao");
ﻩﻩStringb=rs.getString("zhonglei");
ﻩﻩﻩﻩString c=rs.getString("zaike");
ﻩﻩﻩStringd=rs.getString("piaojia");
ﻩSystem.out.println(a+b+c+d);
ﻩﻩﻩﻩ}
ﻩﻩ}
ﻩﻩﻩif(m==2){
ﻩﻩResultSetrs=stmt.executeQuery("select bianhao,chufadi,mudidi,shijian fromxianlu");
ﻩXtitle();
ﻩﻩﻩﻩﻩwhile(rs.next()){
ﻩﻩﻩString a=rs.getString("bianhao");
ﻩﻩﻩﻩﻩStringb=rs.getString("chufadi");
ﻩﻩﻩﻩString c=rs.getString("mudidi");
ﻩﻩﻩStringd=rs.getString("shijian");
ﻩﻩﻩﻩSystem.out.println(a+b+c+d);
ﻩﻩ}
ﻩﻩ}
ﻩﻩﻩif(m==3){
ﻩﻩﻩResultSetrs=stmt.executeQuery("selectbianhao,shoupiao,shengyu,yishoufromchepiao");
ﻩﻩﻩﻩﻩCtitle();
ﻩﻩﻩwhile(rs.next()){
ﻩﻩﻩﻩﻩStringa=rs.getString("bianhao");
ﻩﻩStringb=rs.getString("shoupiao");
ﻩﻩﻩStringc=rs.getString("shengyu");
ﻩﻩString d=rs.getString("yishou");
ﻩﻩﻩSystem.out.println(a+b+c+d);
ﻩ}
ﻩﻩ}
ﻩﻩﻩ}
ﻩﻩﻩif(i==2)
ﻩ{
ﻩﻩﻩSystem.out.println("1.汽车信息插入2.线路信息插入3车票信息插入");
ﻩSystem.out.println("请选择:
");
ﻩﻩﻩﻩintm=0;
ﻩﻩtry{
ﻩBufferedReader br=newBufferedReader(newInputStreamReader(System.in));
ﻩﻩﻩﻩm=Integer.parseInt(br.readLine());
ﻩﻩﻩ}catch(IOExceptionex){}
ﻩﻩﻩif(m==1){
ﻩﻩﻩﻩString c1="",c2="",c3="",c4="";
ﻩﻩﻩﻩ//PreparedStatementpstmt1=con.prepareStatement("select*from CommunicationwhereUname=?
");
ﻩﻩ//pstmt1.setString(1,c1);
ﻩﻩﻩﻩ//ResultSetrs2=pstmt1.executeQuery();
ﻩﻩﻩSystem.out.println("输入你要插入的车次编号:
");
ﻩﻩﻩﻩtry{
ﻩﻩﻩﻩﻩBufferedReaderbr=newBufferedReader(newInputStreamReader(System.in));
ﻩﻩc1=br.readLine();
ﻩﻩﻩ}catch(IOExceptionex){}
ﻩﻩﻩﻩﻩSystem.out.println("c1="+c1);
ﻩﻩSystem.out.println("输入你要插入的汽车种类:
");
ﻩﻩﻩtry{
ﻩﻩﻩﻩBufferedReaderbr=newBufferedReader(newInputStreamReader(System.in));
ﻩc2=br.readLine();
ﻩﻩﻩﻩ}catch(IOExceptionex){}
ﻩﻩﻩﻩSystem.out.println("c2="+c2);
ﻩﻩ