公交管理系统

更新时间:2024-05-26 10:28:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

2011

毕 业 论 文

题目:公交查询系统

姓 名:

专 业: 计算机软件2班 年 级: 2008 级 指导教师:

邯郸职业技术学院

摘 要

摘 要

伴随着计算机技术在各行各业日益广泛和深入的应用,网络的概念早已深入人心。网络在各行各业的发展战略中占据了重要的位置,成为商家跟社会不可分割的部分。通过网络更可实现如网上购物、信息查寻等功能,这些在改变我们原有经营方式与经营理念的同时,也为商家和社会带来了更高的效益。因此,对于公交来说,拥有一个属于自己的网站也是至关重要的。

本论文研究一种基于java软件设上公交查询系统,其开发主要包括后台数据库的建立、后台管理以及前台页面的Web设计。系统使用Microsoft公司以java为核心语言的MyEclipse与NetBeans开发工具,利用微软提供的Apache tomcatV6.0建立运行环境,再结合SQL Server 2000建立数据连接关系。利用其提供的各种组件,在短时间内建立数据库,对数据库进行分析与建立jsp页面以及javaframe后台,不断改进,直到功能基本实现的可行系统。本系统主要分为后台系统管理和前台未注册用户以及注册用户操作两部分。后台管理主要有:管理员的增删改查,公交路线的增删改查,公交站点的增删改查,以及对公交用户注册的管理跟公交用户留言的恢复删除等五个大的模块。前台会员操作主要有:公交用户注册登录,公交用户的路线查询,公交用户的站点查询,公交用户的车辆换乘,以及公交用户的评论留言五个大的模块。由于开发环境和工具都是基于Microsoft公司产品,所以系统能够在Visual Studio 2005或者更高版本上运行。

关键字:.NET;java;SQL Server 2000;公交查询系统

I

Abstract

abstract

Follow the technology of the computer in the enterprise and deep application day by day of all trades and professions, the concept internet has been deeply taken up people’s heart. Today , the internet takes an very important part in the development tactics of all trades and professions, became a part of an company which can not be partition off. The merchandise has not only limited in TV set and newspaper. The internet has became another stage which company can display themselves. Company set up web site, and make propaganda and service of all aspects of company, display on the internet. Though internet we can achieve buying products on the internet, searching message and so on. Those have changed old way of management and idea of management, meanwhile those also bring more yield for company. So, for the bus company, have a web site which is belong to themselves is very important.

Its developments mainly include database setting-up, back-stage management and web design of the foreground pages. The system uses JAVA developing instrument like myEclips and NetBeans, which taking java as key language of Microsoft Company, exploit apache Tomcat V6.0 offered by Microsoft as running environment, and then combine with SQL server 2000 to establish the database. At first, utilize its various kinds of packages offered to set up the database within short time. Then, I analyzed database and made pages with myeclips and netbeans, improved constantly, until basic functions of the system were realized. the system is divided into system management and operation of future membership in two parts. Background management include:the order of the administrator, the order of the road ,the order of the site,the management of the user and also the order of the usercomments. This system management of five functional modules. The future operation of the main members are: member registration, member login, roadsearch , sitesearch , buschange , usercomments , members of top-five functional modules. As the development environment and tools are based on Microsoft products, so the system can be Visual Studio 2005 or later to run

key words: .NET;java; SQL Server 2000; bus searching System

II

目 录

目 录

摘 要 ??????????????????????????????????????I

ABSTRACT????????????????????????????????II

第1章 引 言??????????????????????????????1

1.1课题背景 ?????????????????????????????1 1.2 论文的研究内容 ?????????????????????????1 1.3 论文的组织结构 ?????????????????????????2 第2章 系统的开发工具与环境??????????????????????3 2.1 myEclips简介 ??????????????????????????3 2.2 NetBeans 简介 ??????????????????????????3 2.3 odbc 概述????????????????????????????4 2.4 系统的开发要求 ?????????????????????????5 第3章 需求分析 ????????????????????????????6 3.1 系统需求分析 ???????????????????????????6 3.2 数据库需求分析 ??????????????????????????7 3.2.1 数据需求 ??????????????????????????8 3.3 性能需求分析 ???????????????????????????8 3.3.1 系统处理的准确性和及时性 ??????????????????9 3.3.2 系统的开放性和系统的可扩充性 ????????????????9 3.3.3 系统的易用性和易维护性 ???????????????????9 3.3.4 系统的标准性 ????????????????????????9 3.3.5 系统的先进性 ????????????????????????9 3.3.6 系统的响应速度慢 ??????????????????????10 第4章 系统概要设计 ??????????????????????????11 4.1 概述???????????????????????????????11 4.2 功能模块划分 ??????????????????????????12 4.3 数据库设计 ???????????????????????????12 4.3.1 数据库概念结构设计 ?????????????????????13 4.3.2 数据库逻辑结构设计 ?????????????????????16 第5章 详细设计与实现 ?????????????????????????20 5.1 前台功能的实施 ?????????????????????????20 5.1.1 连接数据库的代码 ??????????????????????20 5.1.2 按站点查询 ?????????????????????????20

目 录

5.1.3 按路线查询 ?????????????????????????22 5.1.4 公交转乘查询 ????????????????????????23 5.1.5 公交评论 ??????????????????????????25 5.1.6 公交用户登录 ????????????????????????28 5.1.7 公交用户注册 ????????????????????????29 5.2后台管理功能的实现 ????????????????????????30 5.2.1 管理员登录窗口 ???????????????????????31 5.2.2 管理员注册窗口 ???????????????????????32 5.2.3管理员修改窗口????????????????????????34 5.2.4 管理员删除窗口 ???????????????????????35 5.2.5 管理员查询窗口 ???????????????????????37 5.2.6 公交路线增加窗口 ??????????????????????39

5.2.7 公交站点增加窗口 ??????????????????????40 5.2.8 公交用户评论回复窗口 ????????????????????42 第6章 测试与维护 ????????????????????????????45 6.1 创建和测试应用程序 ???????????????????????45 6.2 测试项目 ????????????????????????????45 6.3 程序改进 ????????????????????????????46 6.4 测试方法 ????????????????????????????47 6.5 测试内容 ????????????????????????????47 6.6 软件维护 ????????????????????????????48 6.6.1 软件维护的影响因素 ?????????????????????48 6.6.2 软件的可维护性 ??????????????????????48 6.6.3 提高软件可维护性的方法 ??????????????????48 结 论 ????????????????????????????????49 致 谢 ????????????????????????????????50 参考文献 ???????????????????????????????51

第1章 引 言

第1章 引 言

1.1 课题背景

城市公交是专门服务于市民出行的客运企业。它是城市社会和经济活动得重要组成

部分。伴随着国民经济和城市建设的快速发展,城市经济的繁荣,人口的增加,城市必须解决好人们出行的需求。城市公交直接关系着城市的经济发展和居民生活,对城市经对城市经济具有全局性、先导性的影响,城市公交以其方便、快捷、容量大而成为城市交通的主题。但是随着公交系统的庞大,人们很难得到准确的公交信息,这样给一些人的出行就带来了不便。因此,急需一个方便、快捷的公交信息查询方式,本系统通过浏览器查询,实现中心控制、自动更新、更多的查询方式等等更多更强大的功能。 随着城市经济的发展、规模的扩大以及人口的增长,城市交通问题日益突出。降低出行时间将使所有的公交利用者产生效益,快速的交通、更好的信息及更好的市场可以提高公交得形象,能够增加公交乘坐者。城市公共交通运输以其覆盖面广、经济、快捷的特点,成为绝大多数出行者的首选方式,也是各地城市政府搭理发展的一种交通方式。本地市民特别是外来旅游、出差、就医等急需了解本地道路情况的人可以利用本系统方便快捷的查询出所有符合他们要求的公交路线,对他们的出行和生活提供帮助。我国城市公交乘客信息系统给的发展处于一个落后的水平,广大乘客可以获得信息的方式很少,公交信息的完整性和准确性得不到保证,而且还没有专门的机构负责信息的发布和管理。出于这个目的,在老师的指导下,我设计了这个城市公交线路查询系统。 现阶段,人们出入方式主要还是来源于城市公交,特别是对于那些到外地出差、打工,进行商业有关或其他事情需要在外地进行短暂停留的人而言,公交对他们呢是必不可少的,但是对于那个不属于自己所熟悉的城市,乘坐公交也是一个很大的难题,因此,开发一个公交查询系统就显得分厂重要。本系统给的核心是对选择好的车次进行路线的查询,或者输入所要查询的车站名,点击“查询”按钮,查询所有俺有该站的车次及相应的停靠站。

1.2 论文的研究内容

公交查询系统是一个取代过去由人工查询的查询系统。本论文论述了一个基于浏览器/服务器(B/S,Browser/Server)模式的公交查询系统给的研究和实现的过程。论文从开发平台和工具谈起,对MyEclipse,NetBeans服务器所提供的组件及其属性和方法做了一般的介绍,重要阐述了MyEclipse,NetBeans的数据库访问odbc的使用方法。最后,详细介绍了如何创建“公交查询系统”的全部过程。

1

第一章 引 言

1.3 论文的组织结构

论文的第2章是系统的开发工具与环境概述,介绍了该系统设计开发使用的MyEclipse以及NetBeans中的.jsp和.java开发语言和系统在数据库的设计开发中使用的数据库连接技术odbc,并介绍了系统开发所需要的计算机环境。

第3章是系统的需求分析和数据库总体设计,包括系统需求,性能分析等。 第4章是系统的系统概要设计,包括系统哦年该的模块划分,数据库的概念结构设 计和数据库的逻辑结构设计。

第5章是系统的详细设计和实现,包括系统各个界面设计和相关重要注释。 第6章是系统测试和维护。 最后是结论、参考万县。

2

第2章 系统的开发工具与环境

第2章 系统的开发工具与环境

2.1 MyEclipse简介

MyEclipse,是一个十分优秀的用于开发java,j2ee的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开元产品的支持十分不错。 MyEclipse企业级工作平台(MyEclipse enterprise workbench,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以再数据库和javaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的javaEE继承开发环境,包括了完备的编码、调试、测试盒发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,SQL,Hibernate。

在结构上,MyEclipse的特征可以被分为7类: 1:JavaEE模型 2:WEB开发工具 3:EJB开发工具

4:应用程序服务器的连接器 5:JavaEE项目部署服务 6:数据库服务 7:MyEclipse整合帮助

对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MYEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。

简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的,JavaEE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse6.0以前的版本需先安装Eclipse。MyEclipse6.0以后版本安装时不需安装Eclipse。

2.2 NetBeans 简介

NetBeans 由Sun公司在2000年创立,它是开放源运动以及开发人员和客户社区的

家园,旨在构建世界级的JavaIDE。NetBeans当前可以再Solaris、Windows、Linux和Macintosh OS X平台上进行开发,并在SPL(Sun公用许可)范围内使用。

NetBeans是一个全功能的开放源码JavaIDE,可以帮助开发人员编写、编译、调试和部署Java应用,并将版本控制和XHL编辑融入其众多功能之中。NetBeans可支持Java2平台标准版(J2SE)应用的创建、采用JSP和Servlet的2层Web应用的创建,以及用

3

第2章 系统的开发工具与环境

于2层Web应用的API及软件的核心组的创建。此外,NetBeans最新牒还预装了两个Web服务器,即Tomcat和GlassFish,从而免除了繁琐的配置和安装过程。所有这些都为Java开发人员创造了一个可扩展的开放源多平台的Java IDE ,以支持他们在各自所选择的环境中从事开发工作,如Solaris、Linux。Windows或Macintosh。

NetBeans是一个为软件开发者而设计的自由、开放的IDE(集成开发环境),你可以在这里获得许多需要的工具,包括建立桌面应用、企业级应用、WEB开发和JAVA移动应用程序开发、C/C++,甚至Ruby。NetBeans可以非常方便的安装多种操作系统平台,包括Windows,Linux,Mac OS和Solaris等操作系统。

NetBeans6.5是一个升级版,通过相对较短的发行周期和目标明确的特性清单来定义,在PHP编辑与调试、Ajax动态网页设计和数据库工具设计等领域尤其突出。NetBeans6.5 将以6.1主要发行版本或更新中心中可用的特性为急促,包括JavaScipt编辑器、Ruby&Rails工具设计、jMaki、PHP早起访问和Javascript调试器预览。 NetBeans6.5 将继续以核心价值为基础——卓越的即开即用式体验和出色的Java SE/EE/ME平台特性支持。虽然此发行版并未引起重大关注,但是针对Java SE&EE 的底层结构改进将增加最终用户系统的响应性和健壮性。

2.3 odbc 概述

开放式数据库连接(ODBC),(ODBC)是用于访问数据在异类环境中的关系和非Microsoft的战略界面-关系数据库管理系统。基于的SQL访问组 ODBC规范提供了一种开放的、非特定于供应商的方法访问存储在各种专用的个人计算机、小型计算机,和主机数据库中的数据的呼叫界别接口。

ODBC缓解独立软件供应商和企业开发人员需要了解多个应用程序的编程接口。ODBC现在提供了通用数据访问接口。应用程序开发人员可以使用ODBC,润需同时访问、查看,和修改数据从多个,应用程序不同的数据库。

ODBC是Microsoft Windows打开服务的核心组件体系结构。Apple已认可ODBC作为一项关键使通过在将来宣布系统7到支持的技术。不断增长的业界支持用ODBC快速逐渐成为重要的行业标注的Windows和Macintosh应用程序的数据访问。 ODBC数据库应用程序可以使用Visual Basic、Visual C++、Delphi等开发工具开发的应用程序,也可以使其它ODBC数据库应用程序。ODBC应用程序通过ODBC驱动程序管理器调用由ODBC驱动程序管理器提供的ODBC API函数,从而访问来自ODBC数据源的数据。

在ODBC的DLL之下安装不同数据库的驱动程序,开发人员可以访问不同的数据

4

第3章 需求分析

库资源。由于ODBC是基于关系数据库的结构化查询语言SQL而设计的,在ODBC 层之上的应用程序看来,各个异构关系数据库只是相当于几个不同的数据源 (如图所示),而这些数据源的组织结构之不同对于程序员来说是透明的,所以 我们就可以编写独立于数据库的访问程序。

使用ODBC编程必须先建立环境、连接、语句三个句柄,环境句柄建立从应用 到ODBC的联系,连接句柄建立ODBC Driver到数据源的组合关系,当连接句柄 建立后,应用程序要建立一个语句句柄以执行SQL语句。接下来调用执行函数 就可以查询或更新数据库的表,若查询语句较为特殊,它会返回一个结果集, 需要程序员对此结果集做处理。将应用程序关闭时,首先要将语句句柄释放, 然后释放连接句柄,最后释放ODBC环境句柄。

2.4 系统的开发要求

本次开发的公交查询系统对操作系统的要求如下: 硬件要求:

CPU:最低Intel Pentium II 500 MHz 磁盘空间:1GB(完全安装)。 内存: 512MB(最好1GB以上) 显示: 1024*768,256色。

软件要求:操作系统:Windows2000以上,

开发平台:MyEclipse 6.0.1,NetBeans IDE 6.5,Microsoft Server 2000.

7

SQL

第3章 需求分析

第3章 需求分析

3.1 系统需求分析

随着我过经济的告诉发展,人们生活水平的提高,原来越多的人开始热衷于到外地旅游。那么对于这些外来的旅游者,首先要搞清这个城市的公交路线显得很重要!邯郸市作为一个旅游城市,每年都要吸引大量的游客,为了满足这些游客熟悉公交路线的需求,特以公交查询系统为设计课题。本软件不仅可以给游客带来方便,也能给广大市民提供方便。我认为这样的系统应该具有很好的实用性!开发本系统的目标就是立足广大乘客的实际,着眼于公交业的未来发展,规范公交管理,提高服务质量,方便乘客查询,并为此设计该系统。

人们生活水平的提高,越来越多人喜欢旅游,但是第一次来一个陌生的城市,肯定对公交路线不熟悉,所以必定需要一个能查看具体公交路线的公交系统。本系统采用结构化设计的方法来实现系统总体功能,提高系统的各项指标,即将整个系统合理的划分成各个功能模块,正确的处理模块之间和模块内部的联系以及和数据库的联系,定义各个模块的内部结构,通过模块的设计和模块之间关系的系统来实现整个系统的功能。

前台用MyEclipse编写主要有5个模块,用户的注册及登录、路线查询、站点查询、公交换乘、以及用户评论。

功能名称:用户注册及登录

功能概述:用户在没有注册的时候可以查询路线站点及换乘但是没有参与评论的机会,在注册之后,登录可以在网站上参与评论。

功能名称:路线查询

功能概述:可以获得要查询的公交车所经过的所有的站点。 功能名称:站点查询

功能概述:通过输入指定的站点查询经过该站点的公交信息。 功能名称:公交换乘

功能概述:该项可分为直达公交、公交换乘两种,主要体现那些不可直达需要转车的路线的所有换法。(如果用户输入的起始点和终点,有一条及一条以上的公交路线可以直达的,则为直达公交,都可以体现出来)

功能名称:用户评论

8

第3章 需求分析

功能概述:用户对于乘坐公交得心得,或者在公交上发现的人、事、行为可以发表,对于一些不好的评论,管理员可以在后台删除。

后台用NetBeans编写主要有5个模块,管理员的增加、删除、修改、查询,公交路线的增加、删除、查询,公交站点的增加、删除、修改、查询,用户注册查询、删除,用户评论查询、删除。

功能名称:管理员的增加、删除、修改、查询

功能概述:用来管理管理员,管理员分为高级管理员跟普通管理员,高级管理员的权利更加大一些,除了对公交路线的管理外,还可以对管理员进行管理。但是普通管理员的权限只在于对公交路线、站点、评论的查看以及用户注册的查看。

功能名称:公交路线的增加、删除、查询 功能概述:用于对公交路线的管理

功能名称:公交站点的增加、删除、查询、修改

功能概述:用于对公交路线中的某一个或所有的站点的管理 功能名称:用户注册

功能概述:用于对公交查询注册的用户们查看以及删除(删除功能只有高级管理员有权利)

功能名称:用户评论

功能概述:用于管理公交查询注册用户的评论信息的查看及删除(删除功能只有高级管理员有权利)

本系统提供了的车次查询功能、路线查询功能。乘客可以方便进行查询,一方车错车次。当然有些功能的智能化不是很强,系统有待进一步来完善。

3.2 数据库需求分析

数据库在一个信息管理系统中占有非常重要的地位,数据库结构色设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。

数据库技术史由触痛的文件系统发展而来的,从层次模型、网状模型发展到关系模型。数据库技术史数据管理的最新技术,是计算机科学的一个重要分支,它能知道我们正确地设计数据库系统,它的出现极大地促进了计算机应用的发展。采用数据库技术的原理和方法可以有效地设计使用的数据库系统。一个完整的数据库系统包括数据库管理系统(DBMS),数据库管理员(DBA)、数据库(DB)、应用程序和相应的硬件设施。

8

第3章 需求分析

目前许多数据库管理系统都基于关系模型,关系模型的主要特点是用表格结果表达实体,用键表示实体与实体之间的联系。与层次模型和网状模型相比,关系模型比较简单,容易为初学者接受。关系模型是由若干个关系模式组成的集合,关系模式相当于记录类型,它的实例称为干系。每个关系是一张表格。表格简单,用户易懂,用户只需用简单的查询语句就可以对数据库进行数据操作,并不涉及到存储结构,访问技术等细节。关系模型是数学化的模型,要用到集合论,离散数学等知识。SQL语言是关系数据库的代表性语言,已经得到了广泛应用。

在设计数据库时,应注意数据的安全性,保证数据的安全,防止非法用户访问数据库,以免泄露重要信息,同时也能防止非法用户的蓄意破坏,有许多保护数据的方法,如采用用户标识,口令和密码或访问控制等方法。一个成功的数据库应用系统应具有用户标识,每一个合法用户具有一个用户名和相应的口令,进入数据库应用系统前必须输入正确的口令,否则无法进入系统,这就保证了只有合法的用户才能操作数据库系统。为了保证数据的合法予以,必须对数据库的数据进行完整性约束,即防止用户输入不和语义的数据。

在设计应用软件时,应严格按照软件工程学的方法进行设计,传统的方法采用瀑布模型,从问题定义、可行性分析、需求分析、概念设计、总体设计、系统实现、编码和软件测试、运行和维护等软件生命周期内,每一阶段均在前一阶段的基础上进行设计,并在每一阶段有相应的文档资料。

3.2.1 数据需求

数据需求主要是应用来描述本系统的数据来源。根据该系统的实际情况,本系统要有以下数据信息:

1、register、adminregister 用来记录公交用户跟管理员们的名称、id、级别等一些基本信息。

2、bus、busall、busdetail用来记录车辆的信息(数据库设计有冗余,但是由于毕业设计都已经接近尾声了,就没改动)。

3、usercomment用来记录公交用户的评论,以及管理员的回复。 4、province、city是用来记录省市的。

3.3 性能需求分析

为了保证系统能够长期、安全、稳定、可靠、高效的运行,城市公交查询系统应满足一下的性能需求。

8

第3章 需求分析

3.3.1 系统处理的准确性和及时性

系统处理的准确性和及时性是系统的必要性能。在系统设计和开发过程中,要充分考虑当前和将来可能承受的工作量,使系统的处理能力和相应时间能够满足企业对信息的需求。

由于公交查询系统的查询功能对于整个系统的功能和性能完成举足轻重。作为系统的很多数据来源,而车票数量和时间又影响企业的决策活动,其准确性很大程度上决定了公交查询系统的失败。在系统开发过程中,必须采用一定得方法保证系统的准确性。 3.3.2 系统的开放性和系统的可扩充性

公交查询系统在开发过程中,应该充分考虑以后得可扩充性。例如网上查询的用户查询的需求也会不断地更新和完善。所有这些,都要求系统提供足够的手段进行功能的调整和扩充。而要实现这一点,应通过系统的开放性来完成,既系统应是一个开放系统,只要符合一定得规范,可以简单的加入和减少系统的模块,配置系统的硬件。通过软件的修补、替换完成系统的升级和更新换代。 3.3.3 系统的易用性和易维护性

公交查询系统式直接面对使用使用人员的,而是用人员往往对计算机并不是非常熟

悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面;针对用户可能出现的使用问题,要提供足够的在线帮助,缩短用户对系统熟悉的过程。

公交查询系统中涉及到的数据时公交公司的相当重要的信息,系统要提供方便的手段宫系统维护人员进行数据的备份,日常的安全管理,系统以外崩溃时数据的回复等工作。

3.3.4 系统的标准性

系统在设计开发使用过程中都要涉及到很多计算机硬件、软件。所有这些都要符合

主流国际、国家和行业标注。例如在开发中使用的操作系统、网络系统、开发工具都必须符合通用的标准。如规范的数据库操作界面、作为业界标准的TCP/IP网络协议及ISO9002标准所要求的质量规范等;同时,在自主开发本系统时,要进行良好的设计工作,制订行之有效的软件工程规范,保证代码的易读性、可操作性和可移植性。 3.3.5 系统的先进性

目前计算机的技术发展相当快,作为公交查询系统工程,应该保证系统在下个世纪

9

第3章 需求分析

仍旧是先进的,在系统设计和开发的过程中,应在考虑成本的基础上尽量采用当前主流并先进且有良好发展前途的产品。 3.3.6 系统的响应速度

公交查询系统在日常处理中的响应速度为秒级,达到实时要求,以及时反馈信息。在进行统计分析时,根据所需数据量的不同而从秒级到分钟级,原则是保证操作人员不会因为速度问题而影响工作效。

10

第4章 系统概要设计

第4章 系统概要设计

4.1概述

本阶段设计的基本目标是解决系统如何实现问题,也叫做概要设计,本阶段主要任务是划分出系统的物理元素及色合计软件的结构,完成软件定义时期的任务之后就应该对系统进行总体设计,即根据系统分析产生的分5析1结果AS来PX确定这个系统由哪些系统和模块组成,这些系统和模块又如何有机的结合在一起,每个模块的功能如何实现。系统设计的目标是使系统实现拥有所有要求的功能,同时,力争达到高效率、搞可靠性、可修改性、并且容易掌握和使用。

模块化的依据是:把复杂问题分解成许多容易解决的小问题。原来的问题也就变得容易解决。模块化设计是把大型软件按照一定得原则划分成一个较小的相对功能独立又相关联的模块。每个模块完成一个特定的子功能。把这些模块结合起来组成一个整体。完成指定的功能,满足问题的要求。采用模块化原理的优点在于可以使软件结构清晰,容易测试和调试。从而提高软件的可靠性,可修改性。有助于软件开发的组织管理。一个大型软件可分别编写不同的模块。模块化理论的几个重要概念如下:

抽象。抽象就是抽象出十五的本事特性而暂时不考虑它们的细节。处理复杂系统唯一有效地方法就是用层次的方法构造和分析它。一个复杂的动态系统首先可以用一些高级的抽象概念构造和理解,这些高级概念又可以用一些较低级的理解,知道最底层次的具体元素。

信息隐蔽和局部化。信息隐蔽式指在设计和确定模块时,应使得一个模块内包含的信息对于不需要这些信息的模块来说,是不能访问。

局部化是指把一些关系密切的软件元素物理的放得彼此靠近。局部化有助于实现信息隐蔽。

信息隐蔽原理和局部化有助于在测试期间以及软件维护期间修改软件。因为绝大多数数据和过程对于软件的其它部分而言是隐蔽的,从而由疏忽引入的错误就很少可能传播到软件的其它部分。

逐步求精的模块化概念。逐步求精的模块化的抽象是密切相关的。软件构造每一层中模块表示对软件抽象层次的次细化。用自顶向下,逐步求精的方法由抽象到具体的方式分配控制,简化了软件设计和实施,提高了软件的可理解性和可测试性,并使得软件更容易维护。

模块独立性。模块的划分要使模块间极可能的相互独立,独立模块较易维护。度量模块的独立程度有两个标准:内聚和耦合。耦合是对一个软件结构内不同模块之间互连程度的度量。耦合强弱取决于模块间接口的复杂程度,进入或访问一个模块的点,以及通过接口的数。

13

第4章 系统概要设计

在软件的设计中应追求尽可能松散的耦合。内聚标志一个模块内各个元素彼此结合的紧密程度,它是信息隐藏和局部化概念的自然扩展,理想内聚的模块制作一件事情。在设计时应力求做到高内聚。

4.2功能模块划分

查询系统模块

该模块实现公交查询功能。可实现按线路查询、站点查询和起点—终点查询三种查询方式。

录入系统模块

该模块实现数据的增新、修改、删除功能。 系统模块图如下图所示:

邯郸市公交查询系统 前台用户查询页面 后台管理员窗口 公交路线查询 公交站点查询 公交换乘查询 公交用户评论 用户登录注册 高级管理员 普通管理员 登录用户可以评 管理员增、删、改、查 公交线路的增、删、查 公交站点增、删、改、查 公交用户注册查看、删除 公交用户评论查看、回复 邯郸市公交查询系统模块图

14

第4章 系统概要设计

4.3数据库设计

数据库技术史载文件系统的基础上发展起来的一种高效的数据管理技术,

它能保持系统数据的整体性,完整性和共享性。在数据库系统中提供了对数据的访问机制,能有组织的存储相关的数据,具有合理的存储方式,快速的查询效率和小的数据冗余等特性。另外数据的存储和应用程序彼此独立,不仅便于数据的管理与控制而且又利于应用程序的辨别与调试。数据库类似于一个数据的大仓库,能很好地实现数据共享,能维护数据的一致性。数据库设计是屎系统设计的一个重要内容,其设计质量的好坏直接影响系统开发的成败,系统的质量,系统效率及可维护性。

在本系统的设计中,充分考虑到了管理系统数据繁杂,重复性很大,数据使用频繁。因此本系统采用了一种能正确反映用户实现环境,能被现行系统接收,易于维护、效率高的数据管理方法—数据库系统。

数据模型是指数据库中记录与记录之间联系的数据结构形成的。不同的数据管理系统有不同的数据模型,数据库设计的核心问题是设计好的数据模型。在目前的数据库管理系统中有层次模型,网状模型、关系模型三种数据模型。其中,关系模型具有较高的数据独立性,使用也较为方便。其中的排序和索引功能,对数据快速定位,查询提供了有利条件。交流股东对于本系统的数据库设计有以下几点说明:数据库设计兼顾前面设计的数据流程图,管理信息系统的设计并不是以数据库为核心的数据库应用设计,本系统的数据库设计尽量满足3NF(第三范式)的要求,本系统的数据库设计以提高系统运行效率为前提。 4.3.1数据库概念结构设计

在系统设计的开始,我首先考虑的是如何用后素具模型来建立数据库的结构与语义,以对现实世界进行抽象。目前广泛使用的数据模型可以分为两种类型,一种是独立于计算机系统的“概念数据模型”,如“实体联系模型”:另一种是直接面向数据库逻辑结构的“结构数据模型”。在本系统中我采用“实体联系模型”(ER模型)来描述数据库的结构与语义,以对现实世界 第一次抽象。ER模型直接从现实世界抽象出实体类型及实体之间的关系,然后用ER图来表示数据模型。它有两个明显的优点:接近于人的思维,容易理解:与计算机无关,用户容易接受。但它只是数据库设计的第一步。E-R图式直观表示概念模型的工具,它有三个基本成分:

(1)矩形框,表示实体类型(考虑问题的对象)。 (2)菱形框,表示联系类型(实体间的联系)。 (3)椭圆形框,表示尸体的属性。 实体和属性的定义如下:

14

第4章 系统概要设计

Adminregister(管理员注册表)(adminname(管理员名称),adminid(管理员id),adminsex(管理员性别),adminpass(管理员登陆密码)adminclass(管理员级别))

Bus(公交路线)(busnum(公交路线号)busid(公交路线id))

Busall(公交路线详细时间)(busid(公交路线号)allsite(公交全部站点)time1(夏季首末班)time2(冬季首末班)time3(间隔时间))

Busdetail(公交详细站点)(busid(公交线路id)sitename(公交站点)siteid(公交站点id))

Register(公交用户注册)(username(用户名称)birthday(出生日期)sex(性别)password(密码)province(省)cityname(市))

Usercomment(用户评论)(ccomments(用户评论)ctime(评论时间)cuser(用户名)cid(评论id)admincomments(管理员回复)adminname(管理员名称)admintime(回复时间)) 各实体属性图如图所示:

14

路线时间 路线号 第4章 系统概要设计 路线站点 公交路线 路线id

(b)公交路线实体属性 14

第4章 系统概要设计

(e)用户评论实体属性 管理员名称 管理员回复 评论回复时间 评论id 用户评论 评论时间 用户名称 (d)公交用户实体属性 用户所在省 用户密码 用户所在市 用户性别 用户名称 用户出生日期 (c)公交站点实体属性 站点所在路线 站点id 站点名称 公交站点 公交用户 用户评论

15

第4章 系统概要设计

4.3.2数据库逻辑结构设计

本系统采用的数据库管理系统式Microsoft公司的SQL Server 2000。该管理系统由一系列产品组成,不仅能够满足最大的数据处理系统和商业Web站点存储数据的需要,还能为个人或小企业提供易于使用的数据存储服务。 Microsoft SQL Server 2000的特性包括: (1)企业数据管理

在当今的互联世界中,数据和管理数据的系统必须始终为用户可用且能够确保安全。有了SQL Server 2000,则指内的用户和信息技术(IT)专家将从减少的应用程序停机时间、提高的可伸缩性及性能、更紧密而灵活的安全控制中获益。SQL Server 2000也包括了许多新的改进的功能来帮助IT工作人员有效率地工作。SQL Server 2000包含几个在企业数据管理中关键的增强:易管理性、可用性、可伸缩性、安全性。

SQL Server 2000使部署、管理和优化企业数据以及分析应用程序变得更简单、更容易。作为一个企业数据管理平台,它提供单一管理控制台,使数据管理员能够在任何地方监视、管理和协调企业中所有的数据库和相关的服务。它还是提供了一个可以使用SQL管理对象轻松编程的可扩展的管理基础结构,使得用户可以定制和扩展他们的管理环境,同时使独立软件供应商(ISV)也能够创建附加的工具和功能来更好地扩展打开即得得能力。 (2)SQL Server Management Studio

SQL Server 2000 通过提供一个集成的管理控制台来监视和管理SQL Server关系数据库、Integration Service、Analysis Service、Reporting Services、Notification Services以及在数量众多的分布式服务器和数据库上的SQL Server Mobile Edition,从而简化了管理工作。数据库管理员能够同时执行多个任务,例如,编写和执行查询,查看服务器对象,管理对象,监视系统活动和查看联机帮助。SQL Server Management Studio 提供了一个开发环境,可在其中使用Transaction-SQL、多维表达式、XML for Analysis和SQL ServerMobile Edition来编写、编辑和管理脚本和存储过程。Management Studio可以很容易地与源代码控制集成在一起。Management Studio还包括一些工具可用来调度SQL Server代理作业和管理维护计划,以自动执行日常维护和操作的能力,为数据库管理员们提供了更强的生产效率。

SQL Server 2000开放了70多个新的内部数据苦苦性能和资源使用的度量值,涵盖了从内存、锁定到对事物、网络和磁盘I/0的调度等。这些动态管理视图(DMV)提供了对数据库和强大的基础结构的更大的透明度和可见性,可以主动监视数据库的状况和性能。

16

第4章 系统概要设计

(3)SQL管理对象

SQL管理对象(SMO)是一个新的可编程对象集,它可实现所有SQL Server数据库的管理功能。事实上,Management Studio就是构建在SQL管理对象之上的。SMO是作为Microsoft.Net Framework程序集实现的。您可以使用SMO自动执行常见的SQL Server管理任务,例如,用编程方式检索配置设置,创建新数据库,应用Transact-SQL脚本,创建SQL Server代理作业以及调度备份等。SMO对象模型代替了包含在SQL Server早期版本中的分布式管理对象(DMO),因为它更安全可靠并具有更高的可伸缩性。

(4)可用性

在高可用性技术、额外的备份和恢复功能,以及复制增强上的投资使企业能够建和部署高可用的应用程序。在高可用性上的创新有:数据库镜像、故障转移群集、数据库快照和增强的联级操作,这有助于最小化停机时间,并确保可以访问关键的企业系统,本节还将详细介绍这些增强特性。

(5)数据库镜像

数据库镜像润需十五日志以连续的方式从源服务器传递到单台目标服务器上。当主系统出现故障时,应用程序可以立即重新连接到辅助服务器上的数据库。辅助实例几秒钟内即可检测到主服务器发生了故障,并能立即介绍数据库连接。数据库镜像工作在标准服务器硬件下,不需要特定的存储或控制器。

本系统创建的数据库名称为province此数据库包含个表: (1):adminregister表(管理员注册表)

Adminregister表用于存放管理员的基本信息,并且在登录后台的时候要却出该基本信息与其做比较,一致情况下可以进入管理员窗口。 Adminregister表 列名 adminname adminid adminsex adminpass adminclass 数据类型 varchar int varchar varchar varchar 长度 50 4 4 50 50 允许空 是 否 是 是 是 主键 否 是 否 否 否

(2):bus表(公交路线),busall表(公交时间),busdetail表(公交详细站点)

17

第4章 系统概要设计

bus表只用来存放公交得路线号跟id,busall表用来存放公交得总体线路跟公交首末班时间及间隔,busdetail表用来记录公交路线上的详细站点及站点id。

bus表 列名 数据类型 长度 允许空 主键 busnum busid

varchar varchar 30 30 是 是 否 否 busall表 列名 数据类型 长度 允许空 主键 busid allsite time1 time2 time3

varchar varvhar varchar varchar varchar 39 999 50 50 50 否 是 是 是 是 是 否 否 否 否 busdetail表

列名 数据类型 长度 允许空 主键 busid sitename siteid

varchar varchar varchar 30 50 100 是 是 是 否 否 否 (3)register表(公交用户注册表)

register表用来存放公交用户的注册信息,用户在登录首页查询公交路线时,若有评论需求的话,需要注册方可留言,否则只有查看权限。

18

第5章 详细设计与实现

register表 列名 username birthday Sex password provincename cityname

数据类型 varchar varchar varchar varchar varchar Varchar 长度 100 100 10 100 100 100 允许空 是 是 是 否 否 否 主键 否 否 否 否 否 否 (4)usercomment表(用户评论表)

Usercomment表用来存放用户的评论信息及管理员的回复信息。 usercomment表 列名 数据类型 长度 允许空 主键 ccomments ctime cuser cid admincomments adminname admintime

varchar varchar varchar int varchar varchar varchar 1000 50 50 4 199 50 50 是 是 是 否 是 是 是 否 否 否 否 否 否 否 25

第5章 详细设计与实现

第5章 详细设计与实现

5.1 前台功能的实施

进入该公交查询系统的首页如图:

公交查询系统首页 5.1.1连接数据库的代码

String url =

\rovince;

String sql=\; String username=\; String password=\;

Class.forName(\river\); Connection

conn=DriverManager.getConnection(url,username,password);

Statement stmt=conn.createStatement(); stmt.executeQuery(sql); 5.1.2按站点查询

站点查询模块:用户进入系统后,点击左侧导航条中的站点查询,在站点

26

第5章 详细设计与实现

查询模块的输入框中输入要查询的站点,点击确定,系统会检测用户所查询站点经过的路线,若没有的话则没有显示,如果存在的话则显示相关的信息:如:该线路经过的所有站点,冬夏季节的首末班情况,该车次的发车时间等。 点击网页左边导航内的站点查询进入站点查询页面,输入要查询的站点,显示界面如下:

公交用户站点查询页面

其主要的实现代码如下: String

driver=\; String

url=\eName=province\; String uname=\; String upass=\;

request.setCharacterEncoding(\);

String roadsearch=request.getParameter(\); String sql=\* from busdetail inner join busall on busdetail.busid=busall.busid where busdetail.sitename='\+roadsearch+\; try{

Class.forName(driver); Connection

conn=DriverManager.getConnection(url,uname,upass); Statement stmt=conn.createStatement(); ResultSet rs=stmt.executeQuery(sql); while(rs.next()){

out.println(rs.getString(\));

out.println(rs.getString(\));

out.println(rs.getString(\));

26

第5章 详细设计与实现

out.println(rs.getString(\)); out.println(rs.getString(\));

}}

catch(Exception e){ out.println(\); } 5.1.3按路线查询

路线查询模块:用户进入系统后,点击左侧导航条中的路线查询,在路线查询模块的下拉框中选择要查询的站点,点击确定,系统会检测用户所查询路线,若没有选择直接点击确定的话,则会显示所有的公交路线基本情况,或者选择自己想查询的路线路线。

点击网页左边导航内的路线查询进入路线查询页面,选择要查询的路线,显示界面如下:

公交用户路线查询页面

其主要实现代码如下:

String sql1=\; String sql=\

bus.busnum,busdetail.sitename,busdetail.siteid from bus inner join busdetail on bus.busid=busdetail.busid and bus.busid='\+request.getParameter(\)+\order by busdetail.siteid asc\; try{

Class.forName(driver); Connection

conn=DriverManager.getConnection(url,uname,pword); Statement stmt=conn.createStatement(); ResultSet rs=null;

if(request.getParameter(\)==\){

26

第5章 详细设计与实现

rs=stmt.executeQuery(sql1); while(rs.next()){

out.println(rs.getString(\)); out.println(rs.getString(\)); out.println(rs.getString(\)); out.println(rs.getString(\)); out.println(rs.getString(\));

} }

else{

rs=stmt.executeQuery(sql);

request.getParameter(\); while(rs.next()){

--> <%

out.println(rs.getString(\)); %>

} } }

catch(Exception e){ e.printStackTrace();

} 5.1.4公交换乘查询

公交换乘查询模块:用户进入系统后,点击左侧导航条中的公交换乘,在公交换乘查询模块的两个文本框中分别输入要查询的站点,点击确定,系统会检测用户所查询站点所经过的路线,若有则在下面显示可以直达或者需要换乘的车辆信息。

点击网页左边导航内的公交换乘查询进入公交换乘查询页面,分别输入要查询的两个站点,显示界面如下:

公交用户站点查询页面

其主要实现代码为:

26

第5章 详细设计与实现

request.setCharacterEncoding(\);

String a=request.getParameter(\); String b=request.getParameter(\); String

driver=\; String

url=\eName=province\; String uname=\; String pword=\;

String sql=\* from busdetail inner join busall on busdetail.busid=busall.busid where busdetail.sitename='\+a+\busdetail.busid in (select busdetail.busid from busdetail where busdetail.sitename='\+b+\; %>  

size=\”>color=\>  <% out.println(a);

%><% out.println(b);

%>您 需 要  乘 公 交<%

try{

Class.forName(driver); Connection

conn=DriverManager.getConnection(url,uname,pword); Statement stmt=conn.createStatement(); ResultSet rs=null;

if(!a.equals(\)&& !b.equals(\)){ rs=stmt.executeQuery(sql); while(rs.next()){

out.println(rs.getString(\));

%>

align=\><%

out.println(rs.getString(\)); %>


<%

out.println(rs.getString(\));

%>
<%

}

}

26

第5章 详细设计与实现

}

catch(Exception e){ e.printStackTrace(); } 5.1.5公交评论

公交评论模块:用户进入系统后,点击左侧导航条中的公交评论,在公交评论模块页面中,可以看到注册用户的各种评论,所有用户都可以查看,但是只有注册并登陆后才可以进行评论,发表评论在该网站上。

点击网页左边导航内的公交评论进入公交评论页面,查看用户评价当注册登陆后可以进行评论,显示公交评论页面也发表评论页面分别如下图:

用户评价页面

其主要实现代码为: String

driver=\; String

url=\eNa me=province\; String uname=\; String upass=\;

String sql=\; try{

Class.forName(driver); Connection

conn=DriverManager.getConnection(url,uname,upass); Statement stmt=conn.createStatement(); ResultSet rs=stmt.executeQuery(sql); while(rs.next()){

%>
<%

26

第5章 详细设计与实现

out.println(rs.getString(\));

%>    <% out.println(rs.getString(\));

%>时间:<%

out.println(rs.getString(\));

%>
       

;    

nt size=\color=\>管理员回复:<% out.println(rs.getString(\)); %>管理员名称:<% out.println(rs.getString(\));

%>回复时间:<% out.println(rs.getString(\));

%><%}%>


<%

if(session.getAttribute(\)!=null){ %>我也要评论

<%} }

catch(Exception e){ out.println(\); }

26

第5章 详细设计与实现

用户发表评论页面

其主要实现代码为:

String comments=new

String(request.getParameter(\).getBytes(\8859-1\),\);

java.util.Date date=new java.util.Date(); String

driver=\; String

url=\eName=province\; String uname=\; String upass=\;

String sql=\(ccomments,ctime,cuser)

values('\+comments+\+date+\+session.getAttribute(\)+\; try{

lass.forName(driver); onnection

conn=DriverManager.getConnection(url,uname,upass); tatement stmt=conn.createStatement(); tmt.executeUpdate(sql);

%>

<%

catch(Exception e){out.println(\);}

27

第5章 详细设计与实现

5.1.6公交用户登录

公交登录模块:用户进入系统后,点击顶部导航条中的登录,在公交登录页面中,填写曾注册的用户名跟密码,若填写正确则从新进入公交登录主页面此时可以在评论页面中进行评论。

点击网页顶部导航内的登录进入公交登录页面,页面内容如下图:

用户登录页面

其主要实现代码如下: String a=new

String(request.getParameter(\).getBytes(\8859-1\),\);

session.setAttribute(\,a);

String b=request.getParameter(\); String

driver=\; String

url=\eName=province\;

String username=\; String password=\; Connection conn=null; Statement stmt=null; ResultSet rs=null; try{

Class.forName(driver);

conn=DriverManager.getConnection(url,username,password);

stmt=conn.createStatement();

rs=stmt.executeQuery(\

28

第5章 详细设计与实现

username='\+a+\+b+\); while(rs.next()){

int length = rs.getRow();

if(length==1){response.sendRedirect(\;} else{

%><%} }

catch(Exception e){out.println(\失败\);} 5.1.7公交用户注册

公交用户注册模块:用户进入系统后,点击顶部导航条中的注册,在公交注册页面中,需要填写用户的各种基本信息,填写之后点击提交若出现登陆页面则注册成功,登录即可在公交查询页面中查看及发表信息。

点击网页顶部导航内的查询进入公交登录页面,页面内容如下图:

公交用户注册页面

其基本实现代码是:

String account=new

Sring(request.getParameter(\).getBytes(\59-1\),\); String sex=new

String(request.getParameter(\).getBytes(\1\),\);

String provincename=new

String(request.getParameter(\).getBytes(\iso-8859-1\),\); String cityname=new

String(request.getParameter(\).getBytes(\29

第5章 详细设计与实现

8859-1\),\);

String year=request.getParameter(\);

String mounth=request.getParameter(\); String dayday=request.getParameter(\);

String password=request.getParameter(\); String

driver=\; String

url=\eName=province\; String uname=\; String pword=\;

String sql=\

(username,birthday,sex,password,provincename,cityname) values

('\+account+\+year+mounth+dayday+\+sex+\+password+\+provincename+\+cityname+\; try{

Class.forName(driver); Connection

conn=DriverManager.getConnection(url,uname,pword); Statement stmt=conn.createStatement(); out.println(\正在向网络上注册您的基本信息\); stmt.executeUpdate(sql);

for(int i=0;i<=1000099;i++){

response.sendRedirect(\); } }

catch(Exception e){out.println(\失败\); e.printStackTrace();}

5.2 后台管理功能的实现

进入该后台窗口的内容如图:

30

第5章 详细设计与实现

管理员管理窗口 5.2.1管理员登录窗口

管理员登录窗口:管理员要想进入系统,首先需要登录,填写管理员的名称跟密码以及管理员的级别,不同级别进入的窗口是不同的。 进入登录窗口,窗口内容如下图:

管理员登录窗口

其窗口实现代码如下:

String aname, apass; String aclass;

aname = this.adminname.getText();

apass = this.adminpassword.getText();

aclass=(String) this.admincalss.getSelectedItem(); System.out.println(aclass); try {

31

第5章 详细设计与实现

Connection conn = null;

Class.forName(\ conn=

DriverManager.getConnection(\\

Statement s = conn.createStatement();

ResultSet rs = s.executeQuery(\

adminregister where adminname='\+ aname + \adminpass='\+ apass + \adminclass='\ if(aclass==\高级管理员\

System.out.println(rs.getString(\ System.out.println(\发现1\ login login = new login(); login.setVisible(false); first first = new first(); first.setVisible(true);

}

else if(aclass==\普通管理员\

System.out.println(rs.getString(\ System.out.println(\发现1\

login login = new login(); login.setVisible(false);

normalfirst nf=new normalfirst(); nf.setVisible(true);

} else {this.setTitle(\您的输入有误。。。请查证。。。\ } catch (Exception e) { this.setTitle(\运行错误\5.2.2管理员注册窗口

管理员注册窗口实现的是管理员的添加,可以添加两个级别的管理员,对于网站的维护有不同的职责,此窗口只有高级管理员有权限。 管理员注册窗口的内容如下:

32

第5章 详细设计与实现

管理员注册窗口 其窗口实现代码如下: String sex;

if(this.adminfemale.isSelected())sex=\男\else sex=\女\

String

adminname,adminid,adminpass2,adminpass1,adminclass; adminname=this.adminname.getText();

adminpass2=this.adminpassword2.getText(); adminpass1=this.adminpassword.getText();

adminclass=(String)this.adminclass.getSelectedItem();

if(adminname!=\adminpass1.equals(adminpass2)){ try {

System.out.println(adminname); System.out.println(adminpass1); System.out.println(adminpass2);

System.out.println(adminpass1.equals(adminpass2)); Connection conn = null;

Class.forName(\ conn=

DriverManager.getConnection(\\

Statement s = conn.createStatement(); System.out.println(\成功\ s.executeUpdate(\

33

into adminregister

第5章 详细设计与实现

(adminname,adminclass,adminsex,adminpass)values('\his.adminname.getText()+\ectedItem()+\xt()+\

System.out.println(\成功\ this.setTitle(\您的注册完成\ first f=new first(); f.setVisible(true);

this.setVisible(false); }

catch (Exception e) {this.setTitle(\运行错误\ } }

else this.setTitle(\填写的内容有误。。。请重新检查。。。\5.2.3管理员修改窗口

管理员修改窗口,用来修改原来注册过的管理员的基本信息,首先输入管理员的名称,点击查询,管理员的各个信息将会填满下面的各个文本内容,通过文本框可以修改此内容,然后点击修改添加到数据库中,此窗口只有高级管理员才有权限。

管理员修改窗口内容如下图所示:

管理员修改窗口 其窗口实现代码如下:

this.changebutton.setEnabled(true); try {

Connection conn = null;

34

本文来源:https://www.bwwdw.com/article/64r7.html

Top