城市公交查询系统的设计与实现(二)

43 篇文章 0 订阅
43 篇文章 0 订阅

目录

2  相关技术简介

2.1  Jsp技术介绍

2.2   MyEclipse简介

2.3  数据库技术

2.3.1  数据库的体系结构

2.3.2  数据库管理系统(DBMS)

2.3.3  Mysql数据库

1.MySQL是一种数据库管理系统

2.MySQL是一种关联数据库管理系统

2.3.4  MySQL特点特性

2.3.5  MySQL数据库应用环境

2.4  JAVA概述

2.5  J2EE技术

2.6  B/S结构

2.7  Tomcat服务器

2.8  Web技术


前面内容请移步

城市公交查询系统的设计与实现(一)

相关免费资源

城市公交查询系统 

2  相关技术简介

2.1  Jsp技术介绍

        JSP全称Java Server Pages,是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头以%>结束。 JSP是一种Java servlet,主要用来运行Java web的使用者界面。开发者通过使用HTML代码、XHTML代码、XML元素和嵌入JSP操作编写JSP。JSP技术使用web表单得到用户自定义数据通过数据库其他数据库资源,接着动态地建立网页。JSP标签有各种各样的功能,访问数据库、记用户采取的信息、造访JavaBeans组件等,不仅如此各种网页中对信息的传达和共用

        JSP程序通过Java的编程语言动态网页进行封装。根据tags和scriptlets网页存在于服务端的资源的应用逻辑的造访也是可以的。JSP网页逻辑与网页设计和显示分隔开,对重新利用的基于组件的设计进行支持,更易于对基于Web的应用程序进行开发。

        JSP以及Servlet ,在服务器上运行的,一般将运行后的html文本返送给客户端仅仅在客户端浏览器就能显示。先运行调用JSP页面的代码然后在Web服务器送回的JSP文件的结果中碰到的HTML代码送回到客户端。Java程序段来运行数据库,重定向页面可以插入页面和动态页面的功能需要被新建运用标记和编程语言技术形成动态生成的网页时,将形成逻辑处理包。

        Java Servlet 是JSP的技术根本并且很多的Web应用程序的设计都要有Java Servlet和JSP的共同合作。JSP简单易用,完全的面向对象,不仅平台无关性还有安全可靠,这些都是继承了java技术
        从JSP出世后很多的企业设立JSP技术的服务器,像IBM、Oracle、Bea这些企业也让JSP快速变为商业应用的服务器端语言。JSP和 Servlet要放在一起讲,是因为它们都是Sun公司的J2EE(Java 2 platform Enterprise Edition)应用体系中的一部分。Servlet与 CGI很相似,它是HTML程序和后台隔离开的。它们的开始原理也差不多,都是服务器接到客户端的指令后,进行应答。不同的是,CGI对每个客户请求都打开一个进程(Process),而Servlet却在响应第一个请求的时候被载入,一旦Servlet被载入,便处于已执行状态。对于以后其他用户的请求,它并不打开进程,而是打开一个线程(Thread),将结果发送给客户。由于线程与线程之间可以通过生成自己的父线程(Parent Thread)来实现资源共享,这样就减轻了服务器的负担,所以,Java Servlet可以用来做大规模的应用服务

        JSP技术的优点:

        1.一次编写,到处运行。除了系统之外,代码无需做任何改动。

        2.系统的多平台支持。一般可以在所有情况下的平台上进行设计,可以放在所有情况下进行发展。相比ASP/.net来说,优点是显而易见的。

        3.强大的可塑性根据一个的Jar程序能够对Servlet/JSP进行操作也能根据不少的服务器进行集群和负载平衡而且可以根据Application处理问题。单个服务器到多个服务器,Java表现了一个创造性能力 

        4.拥有多元化的工具。Java现有的很多设计方法中许多工具不需要成本,其中大部分均可以在各平台中顺利进行。

5.支持服务器端组件。web的运行需要强大的服务器支持,因此为了完善系统的可操作性,开发者应当在使用web时加入其它工具,JSP能够利用 JAVA BEANS 组件来展示出各式各样的商务功能。

内部对象表现出request 户端请求,这个请求会包括来自GET/POST请求的参数 response网页传回用户端的反应;管理pageContext 网页的属性;session 与请求相关的会话;application servlet正在进行的内容;out 用来输送响应的输出流; config 代码片段配置对象;page JSP网页本身。

2.2   MyEclipse简介

        MyEclipse是基于Eclipse进行插件合成,最终形成功能强大的开发软件。目前主要用于JAVA,JAVAEE的开发,也可以用于移动应用的开发,其主要特点是功能强大,应用广泛,并且支持很多开源的产品,应用前景非常广发。

        MyEclipse是由Eclipse通过对插件的集成而来,是对IDE的拓展,可以用来开发网页等应用,可以实现程序的开发,调试,发布等,能极大的提高开发效率,能完美支持HTML、STRUTS等,可以说集成后的MyEclipse包含了当前所有主流的开源产品。MyEclpise也经历了很多代的产品,从最开始的到后来的2014版本,2015版本等都说明了它在发展历程中的变化。

        MyEclipse的配置使用也非常智能,不需要使用者懂太多的知识,只需要在自己使用的功能中进行了解即可,在完成项目开发之后,也可以直接通过MyEclipse进行项目部署,可以将网页项目进行选中,直接运行在Tomcat中,也可以将项目打包通过导出功能将项目全部导出,然后将项目发布到tomcat中,通过对配置文件的设置安排项目,之后进行查看。可以说,有了MyEclipse之后,基本就能支持所有的web开发,就能使用快捷的编译工具进行快速的开发,也能在各种各样的服务器上进行代码测试。在其他方面,MyEclispe也有很多的开发前景,比如在云开发领域,在移动端开发领域,在企业级开发领域等等,因此,MyEclipse的应用场景非常的广泛。

2.3  数据库技术

        数据库的设计是研究数据库及其应用系统的技术,是数据库在应用领域中主要的研究课题。数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效的存储数据,满足各种用户的应用需求(信息要求和处理要求)。一个信息系统的各个部分能否紧密的结合在一起以及如何结合,关键在数据库。因此只有对数据库进行正确的概念设计、合理的逻辑设计以及有效的物理设计才能开发出完善而高效的信息系统。数据库设计是信息系统的开发和建设的重要组成部分。

2.3.1  数据库的体系结构

        数据的体系结构分成三级:内部级(Internal),概念级(Conceptual)和外部级(External)。这个三级结构有时也称为“三级模式结构”。

        1、 外部级:最接近用户,是单个用户所能看到的数据特性。单个用户使用的数据视图的描述称为“外模式”。

        2、概念级:涉及到所有用户的数据定义、是全局的数据视图。全局视图的描述称为“概念模式”。

        3、内部级:最接近于物理存储设备,涉及到实际数据存储的结构物理存储数据视图的描述称为“内模式”。

        数据库的三级模式结构是数据的三个抽象级别。它把数据的具体组织留给DBMS去做,用户只要抽象地处理数据,而不必关心数据在计算机中的表示和存储,这样就减轻了用户使用系统的负担。

2.3.2  数据库管理系统(DBMS)

        数据库管理系统(DBMS)是指数据库系统中管理数据的软件系统。DBMS是数据库系统的核心组成部分。对数据库的一切操作,包括定义、查询、更新及各种控制,都是通过DBMS进行的。

        在不同的计算机系统中,由于缺乏统一的标准,即使同种数据模型的DBMS,它们在用户接口、系统功能方面也常常是不相同的。

        用户对数据库进行操作,是由DBMS把操作从应用程序带到外部级、概念级、再导向内部级,进而操作存储器中的数据。DBMS的主要目标,是使数据作为一种可管理的资源处理。

        DBMS的主要功能为:

        1、 数据库定义功能:DBMS提供数据定义语言(DDL)定义数据库的三级结构,包括外模式、概念模式、内模式及基相互之间的映象,定义数据的完整性、安全控制等约束。因此,在DBMS中应包括DDL的编译程序。

        2、数据库的操纵功能:DBMS提供数据操纵语言(DML)实现对数据库中数据的操作。基本的数据操作分成两类:检索、更新。

        3、数据库的保护功能:数据库中的数据是信息社会的战略资源,对数据的保护是至关重要的大事。

        4、数据库的恢复功能:在数据库被破坏或数据不正确时,系统有能力把数据库恢复到正确的状态。

        5、数据库的并发控制:DBMS的并发控制子系统能防止错误发生,正确处理好多用户、多任务环境下的并发操作。

        6、数据库的完整性控制:保证数据库中数据及语义的正确性和有效性,防止任何对数据造成错误的操作。

        7、数据库的安全性控制:防止未经授权的用户蓄谋或无意地存取数据库中的数据,以免数据的泄露、更改或破坏。

        8、数据库的存储管理:把各种DML语句转换成低层的文件系统命令,起到数据的存储、检索和更新的作用。

        9、数据库的维护功能:数据装载程序、备份程序、文件重组织程序、性能监控程序
        10、数据字典:数据库系统中存放三级结构定义的数据库称为数据字典(DD)。对数据库的操作都要通过访问DD才能实现,通常DD中还存放数据库运行时的统计信息。 

2.3.3  Mysql数据库

MySQL        MySQL是最流行的开放源码SQL数据库管理系统,它是由MySQL AB公司开发、发布并支持的。MySQL AB是由多名MySQL开发人创办的一家商业公司。它是一家第二代开放源码公司,结合了开放源码价值取向、方法和成功的商业模型。

1.MySQL是一种数据库管理系统

        数据库是数据的结构化集合。它可以是任何东西,从简单的购物清单到画展,或企业网络中的海量信息。要想将数据添加到数据库,或访问、处理计算机数据库中保存的数据,需要使用数据库管理系统,如MySQL服务器。计算机是处理大量数据的理想工具,因此,数据库管理系统在计算方面扮演着关键的中心角色,或是作为独立的实用工具,或是作为其他应用程序的组成部分。

2.MySQL是一种关联数据库管理系统

        关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大的仓库内。这样就增加了速度并提高了灵活性。MySQL的SQL指得是“结构化查询语言”。SQL是用于访问数据库的最常用标准化语言,它是由ANSI/ISO SQL标准定义的。SQL标准自1986年以来不断演化发展,有数种版本。在本手册中,“SQL-92”指得是1992年发布的标准,“SQL:1999”指得是1999年发布的标准,“SQL:2003”指得是标准的当前版本。我们采用术语“SQL标准”标示SQL标准的当前版本

        MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统,它的优点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等,非常适用于Web站点或者其他应用软件的数据库后端的开发工作。此外,用户可利用许多语言编写访问MySQL数据库的程序。作为开放源代码运动的产物之一,MySQL关系数据库管理系统越来越受到人们的青睐,应用范围也越来越广。速度和易用性使MySQL特别适用于Web站点或应用软件的数据库后端的开发工作。

        该数据库是数据和数据库对象的集合,包括表数据库对象是指(表) ,视图(View ),存储过程(存储过程)和触发(触发)等。

        数据库通过SQL(Structured Query Language)来对数据进行操作和管理,这里包括一些基本的操作如select、delete、insert、update语句。ADO ( ActiveX数据对象)是微软的数据库应用程序开发和数据库访问技术。数据库访问接口,来自不同数据源的数据。 ADO封装了很多的程序中使用的OLE DB访问接口的COM接口,它是技术的高级别访问。在数据库管理系统和接口如图2-1所示的原则。 MySQL是一个小型关系型数据库管理系统,它的快速,多线程,多用户。可以与网页文件一起方便地放在网站的目录中的MySQL数据库文件,正是由于此类特点,网站开发的数据库支持技术通常采用MySQL数据库。使用图形化的管理工具的数据库管理。

        JSP MyAdmin是一个用JSP编写的、基于Web的、跨平台的MySQL管理程序,支持简体中文,使用Web浏览器作为管理界面。通过JSPMyAdmin可以进行绝大部分的MySQL操作,包括对数据库级操作,表级操作,以及数据管理等。

图2-1 数据库管理系统和接口的原理

2.3.4  MySQL特点特性

(1)可以处理拥有上千万条记录的大型数据

(2)支持常见的SQL语句规范

(3)可移植行高,安装简单小巧

(4)良好的运行效率,有丰富信息的网络支持

(5)调试、管理,优化简单(相对其他大型数据库)

(6)支持多种操作系统,这意味着在一个操作系统中实现的应用可以很方便地移植到其他的操作系统下。

(7)MySQL的核心采用完全的多线程编程

(8)算法优化查询SQL,切实提高搜索速度。

2.3.5  MySQL数据库应用环境

        相对于其他主要数据库如Oracle,DB2,SQL Server,MySQL有自己的缺点,如,如有限MySQL集群,是一个相对贫穷的效率,但它并没有降低它的声誉。一般的个人消费者和中小型企业,非常的适用MySQL数据库,不仅因为其实一个开源的软件而且体积小、速度快、总体拥有成本低,这也是使用者考虑的范畴之一。

        目前,互联网的结构来最流行的网站上的LAMP(Linux操作系统,Apache+ MySQL的+ PHP)使用的操作系统,如Linux操作系统,Apache Web服务器,服务器端脚本解释器的MySQL数据库, PHP等四个免费软件或开源软件,因为,可持续和可以创建一个免费的网站系统(劳动力成本),所以你的花费不大。

2.4  JAVA概述

        Java非常适合于企业网络和Internet环境,现在已成为Internet中最受欢迎、最有影响的编程语言之一。面向对象主要有四大特性:封装、抽象、继承和多态。

        封装:在面向对象语言中,封装特性是由类来体现的,我们将现实生活中的一类实体定义成类,其中包括属性和行为(在Java中就是方法),就好像人类,可以具有name,sex,age等属性,同时也具有eat(),sleep()等行为,我们在行为中实现一定的功能,也可操作属性,这是面向对象的封装特性;

        抽象:抽象就是将一类实体的共同特性抽象出来,封装在一个抽象类中,所以抽象在面向对象语言是由抽象类来体现的。比如鸟就是一个抽象实体,因为抽象实体并不是一个真正的对象,它的属性还不能完全描述一个对象,所以在语言中体现为抽象类不能实例化;

        继承:继承就像是我们现实生活中的父子关系,儿子可以遗传父亲的一些特性,在面向对象语言中,就是一个类可以继承另一个类的一些特性,从而可以代码重用,其实继承体现的是is-a关系,父类同子类在本质上还是一类实体。

        多态:多态就是通过传递给父类对象引用不同的子类对象从而表现出不同的行为,多态可为程序提供更好的可扩展性,同样也可以代码重用。

2.5  J2EE技术

        J2EE 技术,即Java 2平台企业版(Java 2 Platform Enterprise Edition),是一种B/S模式的体系结构,是利用 Java技术简化企业应用系统开发、管理和部署等复杂问题的一套完整的体系结构。该技术由SUN公司推出,基于Java 2平台,它继承了Java语言方便、灵活、跨平台等优势,还提供了对EJB(Enterprise Java Bean)、Java Servlets、JSP(Java Server Pagers)、XML 、API等技术的支持,从而即降低了开发多层应用系统的难度和复杂性,又提供了对现有应用系统的强大支持。

        J2EE技术一般分为四个层级:客户层、WEB表示层、业务逻辑层、数据层(EIS)。如下图2-2所示。

图2-2 J2EE层次结构图 

        客户层:可以包括瘦客户端、胖客户端,用户可以与该层进行交互作用,是系统的用户界面,可以呈现出适当的视图,收集查询,显示最终结果,是用户在本地所使用的最后的模型成品。

        Web表示层:接收客户层组件的要求,处理请求,然后将请求路由到业务层的适当组件;接受业务层传來的结果,计算一个适当的视图,然后将视图路由到对应客户端。

        业务逻辑层:这一层由若干运行在EJB容器下的EJB组件和应用服务器组成。EJB封装了业务逻辑,应用服务器提供了JDBC技术,来访问数据库。

        Web表示层和业务逻辑层是给 J2EE 发布工作任务的层次,主要是通过服务器完成工作。这两层是 J2EE 的核心层次。

        数据层(EIS): 将前端业务逻辑层的组件与后端数据库层连接起来,收集好的信息放在该层,供用户访问。

2.6  B/S结构

        B/S框架是目前被广泛采用的一种先进的框架结构,它是一种基于互联网的程序架构。当前的使用已经非常广泛,突破了传统的C/S结构的模式,给程序开发的模式带来新的技术革命。它是随着互联网技术的不断发展而发展起来的。随着互联网技术的不断发展,各种信息网站已经不能单独在一台电脑上使用和运行了,所以基于互联网的模式就逐步的发展起来了,并且得到了大规模的应用。

        B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易。

        B/S架构不需要在任何客户端来进行进行程序的部署,使用这样的程序结构来使用开发好的系统是利用浏览器来使用的,就是把开发好的程序配置到一台远程服务器上,在任何可以访问这台服务器的客户端电脑上都可以对程序进行操作和使用,这样的方式给使用者带来了极大的便捷。这样的结构提高了程序的运行效率,打破了地域的限制,降低了程序的使用成本。

        对于我的城市公交查询系统,我们可以把系统配置在远程的服务器上,在得到访问权限之后,只要能够上网就可以使用和访问该系统并进行相关的操作,这样的一种先进模式我们之后只需要对服务器上的程序进行维护即可保证程序的正常使用,大大的提高了工作效率,降低了维护的成本。

        C/S与B/S 区别:

        (1)硬件环境不同 

        B/S 建立在广域网之上的,不必是专门的网络硬件环境,例如电话上网,租用设备,信息自己管理。有比C/S更强的适应范围,一般只要有操作系统和浏览器就行。 

        (2)对安全要求不同 

        C/S 一般面向相对固定的用户群,对信息安全的控制能力很强。一般高度机密的信息系统采用C/S 结构适宜。可以通过B/S发布部分可公开信息。 B/S 建立在广域网之上,对安全的控制能力相对弱,可能面向不可知的用户。

         (3) 对程序架构不同 

        C/S 程序可以更加注重流程,可以对权限多层次校验,对系统运行速度可以较少考虑。B/S对安全以及访问速度的多重的考虑,建立在需要更加优化的基础之上。比C/S有更高的要求 B/S结构的程序架构是发展的趋势,从MS的.Net系列的          BizTalk2000,Exchange2000等,全面支持网络的构件搭建的系统.SUN和IBM推的JavaBean构件技术等,使 B/S更加成熟。

        (4) 软件重用不同 

        C/S 程序可以不可避免的整体性考虑,构件的重用性不如在B/S要求下的构件的重用性好。 

        B/S 面对的多重结构,要求构件相对独立的功能,能够相对较好的重用,就如买来的餐桌可以再利用,而不是做在墙上的石头桌子。 

        (5) 系统维护不同 

        C/S 程序由于整体性,必须整体考察,处理出现的问题以及系统升级。升级难,可能要再做一个全新的系统。

         B/S 构件组成,方面构件个别的更换,实现系统的无缝升级。系统维护开销减到最小,用户从网上自己下载安装就可以实现升级。 

        (6) 处理问题不同 

        C/S 程序可以处理用户面固定,并且在相同区域,安全要求高需求,与操作系统相关,应该都是相同的系统。 

        B/S 建立在广域网上,面向不同的用户群,分散地域,这是C/S无法作到的. 与操作系统平台关系最小。 

        (7) 用户接口不同 

        C/S 多是建立的Window平台上,表现方法有限,对程序员普遍要求较高。 

        B/S 建立在浏览器上,有更加丰富和生动的表现方式与用户交流。并且大部分难度减低,减低开发成本。 

        (8) 信息流不同 

        C/S 程序一般是典型的中央集权的机械式处理,交互性相对低。 

        B/S 信息流向可变化, B-B B-C B-G等信息、流向的变化,更像交易中心。

2.7  Tomcat服务器

        Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP[15]程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat 服务器部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 服务器时,它实际上作为一个与Apache 独立的进程单独运行的。

        当配置正确时,Apache 为HTML页面服务,而Tomcat 服务器实际上运行JSP 页面和Servlet容器。另外,Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat服务器的默认模式。不过,Tomcat服务器处理静态HTML的能力不如Apache服务器。目前Tomcat服务器最新版本为8.0.0。

        Tomcat 服务器运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能。因此利用Tomcat服务器作为集群服务器管理系统的Web应用服务器。

2.8  Web技术

        网络对人类生活的影响是革命性的。它改变了人们传统的生活方式,有了网络人们可以从众多的信息中搜索,然后找到自己想要的部分;无论何时何地人们都可以通过网络与朋友取得联系,通过网络可以坐在家里就能够认识来自世界各地的陌生人,还可以登陆网上银行或在网上购物,足不出户就可以货比三家。 

        网络的快捷是大家有目共睹的,只要几秒种的时间就可以把一封电子邮件发送到大洋彼岸。可以让处在地球上不同角落的人在同一时间收到同一条讯息,这种传递信息的方式可以让消息的传送者与接收者之间能够及时进行互动,快捷的信息交流的方式服务了全人类。 

        网络是非常自由的,在网络上人人都是平等的,无论是什么身份什么地位的人都有权力发表自己的观点和看法,做自己想做的事情,不必有所顾忌,不用在乎对方的职位、年龄。  

        创新性是网络的另一特性。每一项技术的发展都离不开创新,网络技术的发展也是如此。不断创新是网络之所以始终保持旺盛的生命力的根本,这种创新性也让我们不断地接收新的观念,学习新的技术,从而引导我们更好地去发展我们社会。

        Web技术提供了下面的优点:

        1.一个提供了很好的用户体验,让用户能很容易地完成任务,并利用了设备本地的一些性能。 

        2.一个web应用提供了丰富的视觉体验,又不会分散人的注意力;它注重美学,使用和本地应用一样的设计模式,又不失易用性。 

        3.一个web应用非常注重用户的交互、参与和完成任务,而不是让他们仅仅浏览网页。应用程序是自包含的(self-contained),也即用户不用导航到其他站点或者应用来完成任务。 

  • 41
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值