计算机科学与技术专业本科毕业论文.doc_第1页
计算机科学与技术专业本科毕业论文.doc_第2页
计算机科学与技术专业本科毕业论文.doc_第3页
计算机科学与技术专业本科毕业论文.doc_第4页
计算机科学与技术专业本科毕业论文.doc_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

湖南广播电视大学毕业设计(论文)计算机科学与技术专业本科毕业论文题 目:公 交 查 询 系 统学 号: 021220753 姓 名: X X 学 校: 开放教育学院 指导教师: X X 答辩日期: 2011年6月 论文成绩: 湖南广播电视大学目 录摘 要3第一章 绪 论 41.1数据库技术41.1.1数据库的体系结构41.1.2数据库管理系统(DBMS)41.2公交查询系统51.2.1计算机网络51.2.2系统功能61.2.3系统运行环境61.2.4系统开发工具61.2.5现状与前景61.3本文所作工作7第二章 数据库理论基础82.1 关系型数据库82.1.1关系模型的基本概念82.1.2数据库的设计理论92.2 SQL语言介绍102.2.1SQL的组成112.2.2SQL的数据查询112.2.3SQL的数据更新12第三章 技术背景介绍1443.1JSP技术介绍1443.1.1JSP与ASP 的简单比较1443.1.2JSP运行环境3.1.1JSP与ASP 的简单比较1443.1.3 JSP页面示例1453.2B/S系统介绍1883.2.1 B/S架构具备极大的优越性:193.2.2采用JAVA语言实现20第四章 公交查询系统设计分析2114.1 应用需求分析2114.2 系统功能模块划分2114.3 系统数据库设计2124.3.1 概念设计2124.3.2 逻辑设计214第五章 公交查询系统应用程序设计(部分)255.1查询模块的功能实现2555.2管理更新的功能实现2885.2.1公交站点管理2885.2.2公交线路管理311第六章 结束语366摘 要本文结合公交查询系统的实际需要,通过对B/S模式、JDK开发环境及工具、Web发布服务、数据库以及SQL语言的深入学习及实践,主要完成了公交查询系统的需求分析、数据库设计、应用程序设计的工作。关键词:B/S结构,计算机网络,数据库,SQL语言,JSP,WEB服务器 第一章 绪 论1.1数据库技术数据库技术作为数据管理技术,是计算机软件领域的一个重要分支,产生于60年代末。现已形成相当规模的理论体系和实用技术。优秀的数据库设计是应用成功的基石。万万丈高楼平地起,数据库设计如同高楼的基石,是开发高品质应用的前提。1.1.1数据库的体系结构 数据的体系结构分成三级:内部级(Internal),概念级(Conceptual)和外部级(External)。这个三级结构有时也称为“三级模式结构”。 1、外部级:最接近用户,是单个用户所能看到的数据特性。单个用户使用的数据视图的描述称为“外模式”。 2、概念级:涉及到所有用户的数据定义、是全局的数据视图。全局视图的描述称为“概念模式”。 3、内部级:最接近于物理存储设备,涉及到实际数据存储的结构物理存储数据视图的描述称为“内模式”。 数据库的三级模式结构是数据的三个抽象级别。它把数据的具体组织留给DBMS去做,用户只要抽象地处理数据,而不必关心数据在计算机中的表示和存储,这样就减轻了用户使用系统的负担。1.1.2数据库管理系统(DBMS) 数据库管理系统(DBMS)是指数据库系统中管理数据的软件系统。DBMS是数据库系统的核心组成部分。对数据库的一切操作,包括定义、查询、更新及各种控制,都是通过DBMS进行的。 在不同的计算机系统中,由于缺乏统一的标准,即使同种数据模型的DBMS,它们在用户接口、系统功能方面也常常是不相同的。 用户对数据库进行操作,是由DBMS把操作从应用程序带到外部级、概念级、再导向内部级,进而操作存储器中的数据。DBMS的主要目标,是使数据作为一种可管理的资源处理。 DBMS的主要功能为: 1、数据库定义功能:DBMS提供数据定义语言(DDL)定义数据库的三级结构,包括外模式、概念模式、内模式及基相互之间的映象,定义数据的完整性、安全控制等约束。因此,在DBMS中应包括DDL的编译程序。 2、数据库的操纵功能:DBMS提供数据操纵语言(DML)实现对数据库中数据的操作。基本的数据操作分成两类四种: 检索(查询)、更新(插入、删除、修改) 3、数据库的保护功能:数据库中的数据是信息社会的战略资源,对数据的保护是至关重要的大事。DBMS对数据库的保护主要通过四个方面实现: 4、数据库的恢复:在数据库被破坏或数据不正确时,系统有能力把数据库恢复到正确的状态。 5、数据库的并发控制:DBMS的并发控制子系统能防止错误发生,正确处理好多用户、多任务环境下的并发操作。 6、数据库的完整性控制:保证数据库中数据及语义的正确性和有效性,防止任何对数据造成错误的操作。 7、数据库的安全性控制:防止未经授权的用户蓄谋或无意地存取数据库中的数据,以免数据的泄露、更改或破坏。 8、数据库的存储管理:把各种DML语句转换成低层的文件系统命令,起到数据的存储、检索和更新的作用。 9、数据库的维护功能:它有许多实用程序提供给数据库管理员: 数据装载程序 备份程序 文件重组织程序 性能监控程序 10、数据字典:数据库系统中存放三级结构定义的数据库称为数据字典(DD)。对数据库的操作都要通过访问DD才能实现,通常DD中还存放数据库运行时的统计信息。1.2公交查询系统1.2.1计算机网络 计算机网络是指将多台具有独立功能的计算机,通过通信线路和通信设备连接起来,在网络软件的支持下实现数据通信和资源共享的计算机系统。 计算机网络的规模有大有小,大的可以覆盖全球,小的仅局限于一个办公室。现在一般按照网络覆盖的地理范围将计算机网络分为三类:局域网(LAN)、城域网(MAN)、广域网(WAN)。1.2.2系统功能1、基于浏览器(B/S模式)的公交线路分类查询;2、数据的录入、修改、添加、删除。1.2.3系统运行环境 该系统采用Browser/Server模式进行设计: 在服务器上运行Web发布服务器、数据库程序,服务器操作系统为WindowsNT/2000/XP/2003 server,客户机操作为Windows9/ NT/2000/XP/2003,其上运行浏览器程序,服务器和客户机可为同一设备。1.2.4系统开发工具 该系统采用JDK Java环境进行开发,数据库服务器为MySQL,WEB发布服务器为Tomcat Server;客户端使用浏览器运行程序,整个系统调试成功。1.2.5 现状与前景公交查询系统现状分析:鉴于中国目前的经济发展状况,中国人出行还是以公交车为主,所以每个城市的公交系统都比较庞大发达。公交查询系统是近两年出现的新生事物,每个城市的发展状况也是良莠不齐。目前的公交查询系统,基本上具备一下功能:采用车站站点查询、车次查询、路线分析查询三种查询形式,不仅能够查询到各条线路的起停站点,同时还能够分析出换乘车辆情况。公交查询系统的发展前景:未来的公交查询系统,将是基于B/S架构,通过浏览器查询,通过计算机网络全面联网,实现中心控制、自动更新、更多的查询方式、和GIS系统的互联互通等等更多更强大的功能。1.3本文所作工作首先介绍了城市公交查询系统的应用背景、开发环境以及选用的开发工具与数据库的关系,阐明了计算机互联网络的概念。并对数据库的体系结构、DBMS进行了介绍;介绍关系型数据库的基本概念,着重说明了几个关键概念的定义;然后对SQL语言作了一个介绍说明;从特点和功能入手,介绍Java、JSP;并且介绍了B/S模式的概念、特点;用软件工程的方法分析城市公交查询系统,对整个系统进行了需求分析、功能模块划分,并通过ER图对数据库进行概念设计;对城市公交查询系统的具体设计,描述了查询、录入模块的实现过程。 最后,在结束语的总结部分指出了系统的亮点以及不足之处,简单介绍了自己开发过程中的体会与心得:在摸索中实践,在实践中摸索。第二章 数据库理论基础2.1关系型数据库2.1.1关系模型的基本概念用二维表格结构表示实体集,外键表示实体间联系的数据模型称为关系模型。1.二维表格表21是一张职工登记表,这是二维表格工号姓名年龄性别工资0001Zhang26男10000002Li25女15000003Liu29男10000004Wang22女1500表1二维表格实例为简单起见,对表格数学化,用字母表示表格的内容。表1可用图1表示: ABCDEA1A2A3A4 B1B2B3B4 C1C2C3C4 D1D2D3D4 E1E2E3E4图12.键(KEY)键由一个或几个属性组成,在实际使用中,有下列几种键:1)超键(Super Key):在关系中能惟一标识元组的属性集称为关系模式的超键。2)候选键(Candidate Key):不含有多余属性的超键称为候选键。也就是在候选键中,若要再删除属性,就不是键了。3)主键:(Primary Key):用户选作元组标识的一个侯选键称为主键。一般,如不加说明,则键是指主键。3.关系的定义和性质我们可以用集合的观点定义关系。关系是一个元数为K(K=1)的元组的集合。把关系看成是一个集合,集合中的元素是元组,每个元组的属性个数应相同。在关系模型中,对关系作了下列规范性限制:1)关系中每一个属性值都是不可分解的。2)关系中允许出现相同的元组(没有重复元组)3)由于关系是一个集合,因此不考虑元组间的顺序,即没有行序。4)元组中,属性在理论上也是无序的,但在使用时按习惯考虑列的顺序。2.1.2数据库的设计理论关系数据库的设计理论主要包括三个方面的内容:数据依赖、范式,模式设计方法。其中数据依赖起着核心的作用。1.函数依赖(Functional dependency , FD)的定义设R(U)是一个关系模式,U是R的属性集合,X和Y是U的子集。对于R(U)的任何一个可能的关系r,如果r中不存在两个元组,它们在X上的属性值相同,而在Y上的属性值不同,则称“Y函数依赖于X” ,记作XY。如果XY,并且对于X的任一真子集X ,都有Y 不函数依赖于X ,则称“Y完全函数依赖于X” ,记作X f Y 。若XY,但Y不完全函数依赖于X,则称“Y部分函数依赖于X” ,记作X P Y 。如果XY,YZ,且Y X, X不函数依赖于Y,则称“Z传递函数依赖于X”。2. 范式在对表的形式进行了规范化定义后,数据结构还有五种规范化定义,定名为规范化模式,称为范式。在这五种范式中,一般只用前三种,对于常用系统就足够了。而且这五种范式是“向上兼容”的,即满足第五范式的数据结构自动满足一、二、三、四范式,满足第四范式的数据结构自动满足第一、二、三范式,依此类推。第一范式(first normal form,简称1st NF)就是指在同一表中没有重复项出现,如果有则应将重复项去掉。这个去掉重复项的过程就称之为规范化处理。在本文所讨论的开发方法里,1st NF实际上是没有什么意义的。因为我们按规范化建立的指标体系和表的过程都自动保证了所有表都满足1st NF。 第二范式(second normal form,简称 2nd NF)是指每个表必须有一个(而且仅一个)数据元素为主关键字(primary key),其它数据元素与主关键字一一对应。例如,在图l9.7中如果我们将合同号定义为主关键字(其它数据元素中的记录数据都有可能重名,故不能作为主关键字),故只要知道了一个合同记录的合同号,就可以唯一地在同一行中找到该合同的任何一项具体信息。通常我们称这种关系为函数依赖(functional depEndence)关系。即表中其它数据元素都依赖于主关键字,或称该数据元素唯一地被主关键字所标识。第三范式(third normal form,简称 3rd NF)就是指表中的所有数据元素不但要能够唯一地被主关键字所标识,而且它们之间还必须相互独立,不存在其它的函数关系。也就是说对于一个满足了 2nd NF的数据结构来说,表中有可能存在某些数据元素依赖于其它非关键宇数据元素的现象,必须加以消除。为防止数据库出现更新异常、插入异常、删除异常、数据冗余太大等现象,关系型数据库要尽量按关系规范化要求进行数据库设计。下面以教务管理信息系统为例来进行分析。3. 模式设计方法一个好的模式设计方法应符合下列三条原则:表达性:涉及到两个数据库模式的等价性问题,即数据等价和依赖等价,分别用无损联接和保持函数依赖来衡量。分离性:是指属性间的“独立关系”应该用不同的关系模式表达。独立联系是我们所考虑的“基本信息单位”。实际上分离就是清除存储异常和数据冗余现象。如果能达到这个目的,就分离。分离的基准就是一系列范式,分离与依赖等价有时是不可兼容的。最小冗余性:要求在分解后的数据库能表达原来数据库的所有信息这个前提下实现。目的就是节省存储空间,提高对关系的操作效率,清除不必要的冗余。但要注意,在实际使用中,并不一定要达到最小宙余。因为有时带点冗余对于查询处理是有好处的。关系模式的方法基本上可以分为分解与合成两大类。分解型算法要求输入一个初始模式集和依赖集,而结果满足数据等价要求。对于合成型算法只要求输入初始依赖集,结果满足依赖等要求。但它们依据的基本思想是共同的,即独立的联系独立表示。2.2 SQL语言介绍SQL(Structured Query Language)即“结构式查询语言”。SQL虽然名为查询语言,但实际上具有定义、查询、更新和控制等多种功能。由于它使用方便、功能丰富、语言简单易学,很快得到应用和推广。从20世纪70年代末起,在推出的关系数据库系统产品ORACLE、SQL/DS、DB2、SYBASE上实现了SQL语言。很快,SQL语言被整个计算机界认可。1987年6月,国际标准化组织(ISO)采纳为国际标准。随后,ISO对标准进行了大量的修改和扩充。在1992年推出了新的标准SQL2。SQL的标准化工作还在继续,新的标准已被命名为SQL3,将包括许多新的数据库概念,正在不征求意见和进行修改这里将简单介绍基于SQL89和SQL2的语言使用概貌:2.2.1 SQL的组成SQL主要分成四个部分:1)数据定义:这一部分也称为“SQLDDL”,用于定义SQL模式、基本表、视图和索引。2)数据操纵:这一部分也称为“SQLDML”。它分为数据查询和数据更新两类。其中数据更新又分成插入、删除、和修改三种操作。3)数据控制:这一部分包括对基本表和视图的授权,完整性规则的描述,事务控制等内容。4)嵌入式SQL的使用规定:这一部分内容涉及到SQL语句嵌入在宿主语言程序中使用的规则。2.2.2 SQL的数据查询nSELECT语句的语法SELECT目标表的列名或列表达式序列FROM基本表和(或)视图序列WHERE行条件表达式GROUP BY列名序列HAVING组条件表达式ORDER BY列名ASC|DESC句法中表示该成分可有,也可无。整个语句的执行过程如下:a)读取FROM子句中基本表、视图的数据,执行笛卡尔积操作。b)读取满足WHERE子句中给出的条件表达式的元组。c)按GROUP子句中指定列的值分组,同时提取满足HAVING子句中组条件表达式的那些组。d)按SELECT子句中给出的列名或列表达式求值输出。e)ORDER子句对输出的目标表进行排序,按附加说明ASC升序排列,或按DESC降序排列。SELECT语句中,WHERE子句称为“行条件子句”,GROUP子句称为“分组子句”,HAVING子句称为“组条件子句”,ORDER子句称为“排序子句”。2.2.3 SQL的数据更新SQL的数据更新包括数据插入、删除和修改等三种操作1)数据插入a)元组值的插入INSERTINTO基本表名(列名表)VALUES(元组值)或者INSERTINTO基本表名(列名表)(TABLE(元组值),(元组值),)前一种格式只能插入一个元组,后一种格式可以插入多个元组。2)数据删除SQL的删除操作是指从基本表删除元组,其语法如下:DELETEFROM基本表名WHERE条件表达式其语义是从基本表中删除满足条件表达式的元组。3)数据修改当需要修改基本表中元组的某些列值时,可以用UPDATE语句实现,其句法如下:UPDATE基本表名SET列名值表达式,列名值表达式WHERE条件表达式其语义是:修改基本表中满足条件表达式的那些元组中的列值,需修改的列值在SET子句中指出。第三章 技术背景介绍3.1JSP技术介绍在 Sun 正式发布 JSP(JavaServer Pages) 之后,这种新的 Web 应用开发技术很快引起了人们的关注。 JSP 为创建高度动态的 Web 应用提供了一个独特的开发环境。按照 Sun 的说法, JSP 能够适应市场上包括 Apache WebServer 、 IIS4.0 在内的 85% 的服务器产品。3.1.1JSP与ASP 的简单比较 JSP 与 Microsoft 的 ASP 技术非常相似。两者都提供在 HTML 代码中混合某种程序代码、由语言引擎解释执行程序代码的能力。在 ASP 或 JSP 环境下, HTML 代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。普通的 HTML 页面只依赖于 Web 服务器,而 ASP 和 JSP 页面需要附加的语言引擎分析和执行程序代码。程序代码的执行结果被重新嵌入到 HTML 代码中,然后一起发送给浏览器。 ASP 和 JSP 都是面向 Web 服务器的技术,客户端浏览器不需要任何附加的软件支持。 ASP 的编程语言是 VBScript 之类的脚本语言, JSP 使用的是 Java ,这是两者最明显的区别。此外, ASP 与 JSP 还有一个更为本质的区别:两种语言引擎用完全不同的方式处理页面中嵌入的程序代码。在 ASP 下, VBScript 代码被 ASP 引擎解释执行;在 JSP 下,代码被编译成 Servlet 并由 Java 虚拟机执行,这种编译操作仅在对 JSP 页面的第一次请求时发生。3.1.2JSP运行环境 Sun 公司的 JSP 主页在 /products/jsp/index.html ,从这里还可以下载 JSP 规范,这些规范定义了供应商在创建 JSP 引擎时所必须遵从的一些规则。 在运行 JSP 示例页面之前,请注意一下安装 JSWDK 的目录,特别是“ work ”子目录下的内容。执行示例页面时,可以在这里看到 JSP 页面如何被转换成 Java 源文件,然后又被编译成 class 文件(即 Servlet )。 JSWDK 软件包中的示例页面分为两类,它们或者是 JSP 文件,或者是包含一个表单的 HTML 文件,这些表单均由 JSP 代码处理。与 ASP 一样, JSP 中的 Java 代码均在服务器端执行。因此,在浏览器中使用“查看源文件”菜单是无法看到 JSP 源代码的,只能看到结果 HTML 代码。所有示例的源代码均通过一个单独的“ examples ”页面提供。3.1.3JSP页面示例 下面我们分析一个简单的 JSP 页面。您可以在 JSWDK 的 examples 目录下创建另外一个目录存放此文件,文件名字可以任意,但扩展名必须为 .jsp 。从下面的代码清单中可以看到, JSP 页面除了比普通 HTML 页面多一些 Java 代码外,两者具有基本相同的结构。 Java 代码是通过 符号加入到 HTML 代码中间的,它的主要功能是生成并显示一个从 0 到 9 的字符串。在这个字符串的前面和后面都是一些通过 HTML 代码输出的文本。 JSP 页面 % for (int i=1; i JSP 输出之前。 JSP 输出之后。 这个 JSP 页面可以分成几个部分来分析。首先是 JSP 指令。它描述的是页面的基本信息,如所使用的语言、是否维持会话状态、是否使用缓冲等。 JSP 指令由 结束。在本例中,指令“ ”只简单地定义了本例使用的是 Java 语言(当前,在 JSP 规范中 Java 是唯一被支持的语言)。接下来的是 JSP 声明。 JSP 声明可以看成是定义类这一层次的变量和方法的地方。 JSP 声明由 结束。如本例中的“ ”定义了一个字符串变量。在每一项声明的后面都必须有一个分号,就象在普通 Java 类中声明成员变量一样。位于 之间的代码块是描述 JSP 页面处理逻辑的 Java 代码,如本例中的 for 循环所示。最后,位于 之间的代码称为 JSP 表达式,如本例中的“ ”所示。 JSP 表达式提供了一种将 JSP 生成的数值嵌入 HTML 页面的简单方法。会话状态维持是 Web 应用开发者必须面对的问题。有多种方法可以用来解决这个问题,如使用 Cookies 、隐藏的表单输入域,或直接将状态信息附加到 URL 中。 Java Servlet 提供了一个在多个请求之间持续有效的会话对象,该对象允许用户存储和提取会话状态信息。 JSP 也同样支持 Servlet 中的这个概念。 在 Sun 的 JSP 指南 中可以看到许多有关隐含对象的说明(隐含的含义是,这些对象可以直接引用,不需要显式地声明,也不需要专门的代码创建其实例)。例如 request 对象,它是 HttpServletRequest 的一个子类。该对象包含了所有有关当前浏览器请求的信息,包括 Cookies , HTML 表单变量等等。 session 对象也是这样一个隐含对象。这个对象在第一个 JSP 页面被装载时自动创建,并被关联到 request 对象上。与 ASP 中的会话对象相似, JSP 中的 session 对象对于那些希望通过多个页面完成一个事务的应用是非常有用的。 为说明 session 对象的具体应用,接下来我们用三个页面模拟一个多页面的 Web 应用。第一个页面( q1.html )仅包含一个要求输入用户名字的 HTML 表单,代码如下: 请输入您的姓名: 第二个页面是一个 JSP 页面( q2.jsp ),它通过 request 对象提取 q1.html 表单中的 thename 值,将它存储为 name 变量,然后将这个 name 值保存到 session 对象中。 session 对象是一个名字 / 值对的集合,在这里,名字 / 值对中的名字为“ thename ”,值即为 name 变量的值。由于 session 对象在会话期间是一直有效的,因此这里保存的变量对后继的页面也有效。 q2.jsp 的另外一个任务是询问第二个问题。下面是它的代码: 您的姓名是: 您喜欢吃什么 ? 第三个页面也是一个 JSP 页面( q3.jsp ),主要任务是显示问答结果。它从 session 对象提取 thename 的值并显示它,以此证明虽然该值在第一个页面输入,但通过 session 对象得以保留。 q3.jsp 的另外一个任务是提取在第二个页面中的用户输入并显示它: 您的姓名是: 您喜欢吃: 3.2B/S系统介绍传统的C/S架构(客户机/服务器,Client/Server)方式中,业务逻辑位于客户端,每完成一项事务,都要频繁地访问数据库,使得网络上数据流量非常大,对于慢速连接的用户,甚至无法使用。为弥补上述C/S架构的缺陷,人们发展出了三层或多层架构:客户机中间件(应用服务器)数据库服务器(ClientMiddle wareDatabase Server)。在这种架构中,业务逻辑放置于中间件服务器上,大量的数据流也位于中间件和数据库之间,而客户机只是简单地发出请求,中间件接受请求后进行事务处理并将处理的结果返回给客户机,这一类型的客户机也称之为“廋客户”。B/S架构实际上是三层架构的一种,所不同的是客户端就是目前几乎每台电脑中都有的网络浏览器,而中间件则是Web应用服务器。注意到主要的业务逻辑均由位于Web应用服务器上的Servlet和JSP程序或EJB来处理。 3.2.1 B/S架构具备极大的优越性1、面向电子商务时代的技术将来所有的应用系统几乎都在互联网或企业内部广域网上运行,发展电子商务成为企业不可避免的信息化道路。B/S架构的软件正是电子商务的基石,正是这类软件使得移动办公和分布式协同工作真正成为现实。无论在世界的那个角落,只需要一台可以联网的设备(计算机、PDA甚至手机)都可以方便地与客户联系和与他人协同工作。2、软件操作、维护和升级方式的革命软件系统的改进和升级越来越频繁,B/S架构的产品在维护和升级方面具备显著的优势。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只对服务器进行,通过远程连接服务器,异地的运维人员甚至于可以做到远程维护和升级,这对人力、时间、费用的节省是相当惊人的。所有的客户端只是浏览器,所有的操作都和上网浏览网页类似,使用者接受的培训也仅限于业务逻辑而无需将大量精力浪费学习软件操作上。3、系统整合无论是办公自动化(OA)系统,人力资源(HR)系统,客户关系管理(CRM)系统,ERP等等,发展的趋势是不断融合。而采用统一的B/S结构开发的产品无论是现在还是将来都是最好的选择,它提供了真正意义上无缝地与其它系统进行整合的方案。3.2.2采用JAVA语言实现1、跨越平台的限制尽管目前Windows桌面系统一统天下,但是服务器系统采用的操作系统却具有多样性,包括Linux、Unix、Windows NT/2000Server等系统都可以实现企业级应用。即便是桌面系统,中国政府出于安全和国家战略的考虑,希望有自己的操作系统,Linux的出现使这种想法变成了现实,不久也许国产的Linux系统将占据更多桌面系统的市场份额。传统的C/S架构的软件需要针对不同的操作系统开发不同版本的软件,面对众多的操作系统和软件快速的升级换代, 采用这一架构开发软件,对于企业的IT投资无疑是一种巨大的风险。而采用Java语言实现的B/S架构的软件产品真正做到了“一次编写处处运行(Write Once, Run Anywhere)” ,对企业而言,可以规避将来更换操作系统所带来的风险。2、健壮的系统Java语言实现的软件具有天然的健壮性。这是Java语言自身的特性保证的。利用Java写成的软件几乎不可能造成系统崩溃,这正是安全性要求很高的企业级应用所不可或缺的特性。第四章 公交查询系统设计分析根据数据库系统生存期的设计方法,从数据库应用系统和开发的全过程来考虑,将数据库应用系统设计分为以下几个阶段:1)规划;2)需求分析;3)概念设计;4)逻辑设计5)物理设计4.1应用需求分析 要设计一个良好的公交查询系统,就必须首先明确该应用环境对系统的要求。公交查询系统的应用背景为:方便市民搭乘公交车出行;手动(目前)、自动(将来)、及时更新查询数据。因此,该系统需满足以下几方面需求: 1、查询功能:系统需要提供几种不同方式的查询手段,以实现灵活方便地管理整个系统。 2、数据的更新修改: 更新:系统允许管理员级别的用户对数据进行更新、修改并且存盘操作; 编辑:系统允许管理员级别的用户对数据进行编辑、删除的操作,保证现库的真实性与实时性。 3、打印输出(暂未实现):系统可以将用户查询到的内容动态地生成报表,并打印输出。4.2 系统功能模块划分公交查询系统功能划分模块如下:1、 查询系统模块该模块实现公交查询功能。可实现按起点中转站终点查询查询和按线路查询两种查询方式。录入系统模块 该模块实现数据的录入、修改、删除功能。该模块由公交站点管理与公交线路管理两部分组成,4.3系统数据库设计4.3.1 概念设计 概念设计的目标是产生反映城市公交查询系统需求的数据库概念结构,即概念模式。概念模式是独立于数据库逻辑结构,独立于支持数据库的DBMS,不依赖于计算机系统的。 1、ER模型 ER模型是对现实世界的一种抽象。它的主要成分是实体、联系和属性。使用这三种成分,我们可以建立许多应用环境的ER模型。 2、ER模型的操作 在利用ER模型进行数据库概念设计的过程中,常常需要对ER图进行种种变换。这些变换又称为ER模型的操作,包括实体类型、联系类型和属性的分裂、合并和增删等等。 3、利用ER方法的数据库概念设计 利用ER方法进行数据库的概念设计,可以分成三步进行:首先设计局部ER模式,然后把各局部ER模式综合成一个全局ER模式,最后对全局ER模式进行优化,得到最终的ER模式,即概念模式。 设计局部的ER模式 通常,一个数据库系统都是为多个不同用户服务的。各个用户对数据的观点可能不一样,信息处理需求也可能不同。在设计数据库概念结构时,为了更好地模拟现实世界,一个有效的策略是“分而治之”,即先分别考虑各个用户的信息需求,形

温馨提示

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

评论

0/150

提交评论