文献综述.docx
- 文档编号:28879564
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:26
- 大小:38.47KB
文献综述.docx
《文献综述.docx》由会员分享,可在线阅读,更多相关《文献综述.docx(26页珍藏版)》请在冰豆网上搜索。
文献综述
附件一文献综述
[1]唐汉明,翟振兴,兰丽华,关宝军,申宝柱.深入浅出MySQL数据库开发、优化与管理维护[M].人民邮电出版社,2008-04-01.
MySQL是由DavidAxmark、AllanLarsson和MichaelWidenius3个瑞典人于20世纪90年代开发的一个关系型数据库。
最初,他们的目的是用自己的ISAM(IndexedSequentialAccessMethod,索引顺序存取方法)和mSQL(MiniSQL,一种轻量级SQL数据库引擎技术)来连接访问表格,但后来发现mSQL的速度和灵活性不能满足需求,于是他们开发了几乎于mSQLAPI接口相同的数据库引擎,并用创始人之一MichaelWidenius女儿My的名字命名,这就是MySQL的来由。
最近几年,随着IT技术的发展,开源数据库逐渐流行起来。
和传统的商业数据库相比,开源数据库具有完全免费、源码公开、随意下载等特点,并可以用于各种商业目的。
这使得开源数据库被广泛应用在各个行业中,并大大降低了企业的开发运营成本。
同时开源数据库也对传统商业数据库的市场造成了极大的冲击,使得传统商业数据库提供商不得不提供相应数据库的免费版本(并非开源),但是这些免费版本一般都具有很多的功能限制,和开源数据库相比,还是有不晓得差距。
MySQL正是这些数据库中的杰出代表。
MySQL数据库隶属于MySQLAb公司,总部位于瑞典。
公司中的“AB”是瑞典语“aktiebolag”或“股份公司”的首字母缩写。
MySQL支持几乎所有的操作系统,并且支持很大的表(MyISAM存储引擎支持的最大表尺寸为65536TB),这些特性使得MySQL的发展非常迅猛,目前已经广泛应用在各个行业中。
用户通常可以到官方网站下载最新版本的MySQL数据库。
按照用户群分类,MySQL数据库目前分为社区版(CommunityServer)和企业版(Enterprise),它们最重要的区别在于:
社区版是自由下载而且完全免费的,但是官方不提供任何技术支持,适用于大多数普通用户;企业版是收费的,不能在线下载,相应地,它提供了更多的功能和更完善的技术支持,更适合于对数据库的功能和可靠性要求较高的企业客户。
[2]CayS.Horstmann,GaryCornell著,叶乃文,邝劲筠,杜永萍译.JAVA核心技术卷I:
基础知识[M].机械工业出版社,2009-01-01.
1995年底,Java语言在Internet舞台一亮相便名声大噪,其原因在于它将有望成为连接用户与信息的万能胶,而不论这些信息来自于Web服务器、数据库、信息提供商,还是任何其他渠道。
事实上,就发展前景而言,Java的地位是独一无二的。
它是一种完全可信赖的程序设计语言,得到了除微软之外的所有厂家的认可。
其固有的可靠性与安全性不仅令Java程序员放心,也令使用Java程序的用户放心。
Java内建了对网络编程、数据库连接、多线程等高级程序设计人物的支持。
1995年以来,SunMicrosystems公司已经发布了Java开发工具箱(JavaDevelopmentKit)的7个主要版本。
在过去的11年中,应用程序接口(API)已经从200个类扩展到3000个类,并覆盖了用户界面构建、数据库管理、国际化、安全性以及XML处理等各个不同的领域。
Java的设计者已经编写了颇有影响力的“白皮书”,用来解释设计的初衷以及完成的情况,并且发布了一个简短的摘要。
这个摘要用下面11个关键术语进行组织:
简单性可移植性
面向对象解释型
网络技能(Network-Savvy)高性能
健壮性多线程
安全性动态性
体系结构中立
Java是一种程序设计语言,HTML是一种描述网页结构的方式。
除了用于放置Javaapplet的HTML扩展之外,两者没有任何共同之处。
Java是一种程序设计语言;XML是一种描述数据的方式。
可以使用任何一种程序设计语言处理XML数据,而JavaAPI对处理XML提供了很好的支持。
此外,许多重要的第三方XML工具采用Java编写。
想java这种功能强大的语言大都不太容易学习。
首先,必须将编写玩具式程序的轻松和开发实际项目的艰难区分开来。
Java类库包含了数千种类和接口与几万个方法。
幸运的是,并不需要知道它们中的每一个,然而,要想Java解决实际问题,还是需要了解不少内容的。
SunMicrosystems公司为Solaris、Linux和Windows提供了Java开发工具箱(JDK)的最新最完整的版本。
用于Macintosh和一些其他平台的版本仍处于各种不同的开发状态中,不过,这些版本都是由相应的开发商授权并分发的。
安装JDK过程中提供了包含JDK版本号(如jdk1.6.0)的默认的安装路径。
这似乎有些烦人,但是,应该重视版本号,它会给安装新版JDK的测试带来便利。
在windows环境下,强烈建议不要接受带空格的默认路径名,如:
c:
\ProgromFIles\jdk1.6.0。
应该将ProgromFiles部分删掉。
在完成了JDK的安装路径之后,还需要执行另外一个步骤:
把jdk/bin目录添加到执行路径中。
所谓执行路径是指操作系统搜索本地可执行文件的目录列表。
对于不同的操作系统,这个步骤的操作过程有所不同。
·在UNIX(包括Solaris和Linux)环境下,编辑执行路径的过程与所使用的shell有关。
如果使用的是Cshell(Solaris的默认选择),在~/.cshrc文件的末尾就要添加:
setpath=(/usr/local/jdk/bin$path)
如果使用的是BourneAgainshell(Linux的默认选择),在~/.bashrc文件或~/.bash_profile文件的末尾就要添加:
exportPATH=/usr/local/jdk/bin:
$PATH
·在windows下,以管理员身份登录。
启动ControlPanel,切换到ClassicView,并选择System图标。
在WindowsNT/2000/XP中,立即会看到SystemProperties对话框。
在Vista中,需要选择Advanced系统设置(如图2-1所示)。
在SystemProperties对话框中,点击Advanced标签,然后点击EnvironmentVariables按钮。
滚动SystemVariables窗口直到找到变量名path为止。
点击Edit按钮(如图2-2所示)。
将jdk\bin目录添加到路径的开始处,用分号将新条目隔开,如下所示:
c:
\jdk\bin;otherstuff
将这个设置保存起来,打开的任何控制窗口都会有正确的路径。
了解如何使用基本的JDK工具,这样才会感觉使用集成开发环境是一种享受。
[3]CayS.Horstmann,GaryCornell著,陈昊鹏,王浩,姚建平等.Java核心技术卷Ⅱ:
高级特性[M].机械工业出版社,2008-12.
所有的数据库供应商和工具开发商都认为,如果Sun公司能够为SQL访问提供一套“纯”JavaAPI,同时提供一个驱动管理器,以允许第三方驱动程序可以连接到特定的数据库,那它们会显得非常有用。
这样,数据库供应商就可以提供自己的驱动程序,并插入到驱动管理器中。
另外还需要一套简单的机制,以使得第三方驱动程序可以向驱动管理器注册。
因此,Sun公司制定了两套接口。
应用程序开发者使用JDBCAPI,而数据库供应商和工具开发商则使用JDBC驱动API。
这套接口组织方式遵循了微软公司非常成功的ODBC模式,ODBC为C语言访问数据库提供了一套编程接口。
JDBC和ODBC都基于同一个思想:
根据API编写的程序都可以与驱动管理器进行通信,而驱动管理器则通过程序与实际数据库进行通信。
JDBC最终是为了实现以下目标:
·通过使用SQL语句,甚至是专有的SQL扩展,程序员可以利用Java语言开发访问数据库的应用。
需要说明的是,扩展SQL仍然需要遵守Java语言的相关约定。
·数据库供应商和数据库工具开发商可以提供底层的驱动程序。
因此,他们有能力优化各自数据库产品的驱动程序。
如今全世界都在从客户端/服务器模式转向“三层应用模式”,甚至更高级的“n层应用模式”。
在三层应用模式中,客户端不直接调用数据库,而是调用服务器上的中间层,最后由中间件层完成数据库查询操作。
这种三层应用模式有以下特点:
它将可视化标识(位于客户端)从业务逻辑(位于中间层)和原始数据(位于数据库)中分离出来。
因此,我们就可以从不同的客户端,如Java应用,Applet或者Web表单,来访问相同的数据和相同的业务规划。
客户端和中间层之间的通信可以通过HTTP(在将Web浏览器用作客户端时),或诸如远程方法调用RMI(在使用应用或Applet时)这样的其他机制来完成。
JDBC负责在中间层和后台数据库之间进行通信,当然,这种模式有多种变体,尤其是Java企业版(JavaEE)为应用服务器定义了一种结构,用于管理称为企业级JavaBean(EJB)的代码模块,并且提供了许多重要的服务,比如高安全性、负载平衡、访问请求的高速缓存以及对象-关系映射等。
在此架构中,JDBC仍然扮演了重要的角色,即完成复杂的数据库查询。
SQL是对所有现代关系型数据库都至关重要的命令行语言,JDBC则使得我们可以通过SQL与数据库进行通信。
桌面数据库通常都有一个图形用户界面;使用这种界面,用户可以直接操作数据。
但是,基于服务器的数据库只能使用SQL进行访问。
JTable构件用于显示二维对象表格。
当然,表格在用户界面中很常见。
Swing开发小组将大量的精力投入到了表格控制方面。
表格本身比较复杂,但是它可能比其他Swing类更为成功,因为JTable构件隐藏了更多的复杂性。
只需编写几行代码就能够产生具有完全功能化的、行为丰富的表格。
当然,可以编写更多的代码,为你的具体应用定制显示外观和运行特性。
[4]李刚.疯狂Java讲义[M].电子工业出版社,2009-04.
Java语言是一门非常纯粹的面向对象编程语言,它吸收了C++语言的各种优点,又摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。
Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象的概念,允许程序员以优雅的思维方式进行复杂的编程开发。
Java的设计宗旨独立于任何平台,自然不会提供太多的Windows特性。
但这也正是Java语言的优势:
跨平台。
大部分时候,对于一个企业应用而言,永远无法确定这个应用需要再怎样的平台上运行,如果你一旦选择了比如C#这样的语言,那么你的应用就只能局限在Windows平台上。
因此,对于一个开放式的企业应用而言,通常会选择Java作为开发语言,而不是选择比如C#这样的语言。
Java语言里负责解释执行字节码文件的是Java虚拟机,即JVM(JavaVirtualMachine)。
JVM是可运行Java字节码文件的虚拟计算机。
所有平台上的JVM向编译器提供相同的编程接口,而编译器只需要面向虚拟机,生成虚拟机能理解的代码,然后由虚拟机来解释执行。
在一些虚拟机的实现中,还会将虚拟机代码装换成特定系统的机器码执行,从而提高执行效率。
当使用Java编译器编译Java程序时,生成的是与平台无关的字节码,这些字节码不面向任何具体平台,它只面向JVM。
不同平台上的JVM都是不同的,但它们都提供了相同的接口。
JVM是Java程序跨平台的关键部分,只要为不同平台实现了相应的虚拟机,编译后的Java字节码就可以在该平台上运行。
显然,相同的字节码程序需要在不同的平台上运行,这几乎是“不可能的”,只有通过中间的转换器才可以实现,JVM就是这个转换器。
JVM是一个抽象的计算机,和实际的计算机一样,它具有指令集并使用不同的存储区域。
它负责执行指令,还要管理数据、内存和寄存器。
Sun公司制定的Java虚拟机规范在技术上规定了JVM的统一标准,具体定义了JVM的如下细节:
Ø指令集
Ø寄存器
Ø类文件的格式
Ø栈
Ø垃圾回收堆
Ø存储区
Sun公司制定这些规范的目的是为了提供统一的标准,最终实现Java程序的平台无关性。
如果以前学习过Java的读者可能对CLASSPATH环境变量不陌生,几乎每一本介绍Java入门的图书里都会介绍CLASSPATH环境变量的设置,但对于CLASSPATH环境变量的作用则常常语焉不详。
实际上,如果使用1.5以上版本的JDK,完全可以不同设置CLASSPATH环境变量—正如上面编译、运行Java程序所见到的:
即使不设置CLASSPATH环境变量,完全可以正常编译和运行Java程序。
那么CLASSPATH环境变量的作用是什么呢?
当我们使用javaJava类名命名来运行Java程序时,JRE到哪里去搜索Java类呢?
可能有读者会回答,在当前路径下搜索啊。
这个回答很聪明,但1.4以前版本的JDK都没有设计这个功能,这意味着即使当前路径已经包含了HelloWorld.class,并在当前路径下执行javaHelloWorld,系统将一样提示找不到HelloWorld类。
如果使用1.4以前版本的JDK,则需要在CLASSPATH环境变量中添加一点(.),用以告诉JRE需要在当前路径下搜索Java类。
除此之外,编译和运行Java程序还需要JDK的lib路径的dt.jar和tools.jar文件里Java类,因此还需要把这两个文件添加到CLASSPATH环境变量里。
因此,如果使用1.4以前版本的JDK来编译和运行Java程序,常常需要设置CLASSPATH环境变量的值为.;JAVA_HOME%\lib\dt.jar%JAVA_HOME%\lib\tools.jar。
(JAVA_HOME就是JDK的安装目录)
后来,Sun改进了JDK的设计,JRE会自动搜索当前路径下的类文件,而且使用Java的编译和运行工具时,系统可以自动加载dt.jar和tool.jar文件中的Java类,因此不再需要设置CLASSPATH环境变量。
Java程序是一种纯粹的面向对象的程序设计语言,因此Java程序必须以类(class)的形式存在,类(class)是Java程序的最小程序单位。
Java程序不允许可执行性语句、方法等成分独立存在,所有的程序部分都必须放在类定义里。
Java程序源文件的命名不是随意的,Java文件的命名必须满足如下规则:
ØJava程序源文件的后缀必须是.java,不能是其他文件后缀名。
Ø通常情况下,Java程序源文件的主文件名可以是任意的。
但有一种情况例外:
如果Java程序源代码里定义了一个public类,则该源文件的主文件名必须是与该public类(也就是该类定义使用了public关键字修饰)的类名相同。
由于Java程序源文件的文件名必须与public类的类名相同,因此,一个Java源文件里最多只能定义一个public类。
虽然如果Java源文件里没有包含public类定义时,这个源文件的文件名可以是随意的,但笔者推荐让Java源文件的主文件名与类名相同,这可以提供更好的可读性。
通常有如下三个建议:
Ø一个Java源文件只定义一个类,不同的类使用不同的源文件定义。
Ø将每个源文件中单独定义的类都定义成public。
Ø保持Java源文件的主文件名与该源文件中定义的public类同名。
垃圾回收能自动释放内存空间,减轻编程的负担。
这使Java虚拟机具有两个显著的优点:
Ø垃圾回收机制可以很好地提高编程效率。
在没有垃圾回收机制的时候,可能要花许多时间来解决一个难懂的存储器问题。
在用Java语言编程的时候,依靠垃圾回收机制可大大缩短时间。
Ø垃圾回收机制保护程序的完整性,垃圾回收是Java语言安全性策略的一个重要不部分。
Java完全支持使用对象、类、继承、封装、消息等基本概念来进行程序设计,允许从现实世界中客观存在的事物(即对象)出发来构造软件系统,在系统构造中尽可能运用人类的自然思维方式。
实际上,这些优势是所有面对对象编程语言的共同特征。
面向对象的方式实际上由OOA(面向对象分析)、OOD(面向对象设计)和OOP(面向对象编程)三个部分有机组成,其中,OOA和OOD的结构需要使用一种方式来描述并记录,目前业界统一采用UML(统一建模语言)来描述并记录OOA和OOD的结果。
面向对象方法具有三个基本特征:
封装(Encapsulation)、继承(Inheritance)和多态(Polymorphism),其中,继承是面向对象实现软件复用的重要手段,当子类继承父类后,子类作为一种特殊的父类,将直接获得父类的属性和方法:
封装指的是将对象可以直接赋给父类变量,但运行时依然表现出了子类的行为特征,这意味着同一个类型的对象在运行时可能表现出不同的行为特征。
除此之外,抽象也是面向对象的重要部分,抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。
抽象并不打算了解全部问题,而只是考虑部分问题。
面向对象有如下几个功能:
Ø对象是面向对象方法中最基本的概念,它的基本特点有:
标识唯一性、分类性、多态性、封装性、模块独立型好。
Ø类是具有共同属性、共同方法的对象的集合。
类是对象的抽象;对象则是类的实例。
而类是整个软件系统最小的程序单元,类的封装性将各种信息细节隐藏起来,并通过公用方法来暴露类对外所提供的功能,从而提高了类的内聚性,降低了对象之间的耦合性。
Ø对象间的这种相互合作需要一个机制协助进行,这样的机制称为“消息”。
消息是一个实例与另一个实例之间传递的信息。
Ø在面向对象方法中,类之间共享属性和操作的机制称为继承。
已有的类可当做基类来引用,则新类相应的可当做派生类来引用。
继承具有传递性。
可分为单继承(一个继承只允许有一个直接父类,即类等级为树形结构)与多继承(一个类允许有多个直接父类)。
当你判断一门语言是否是面对对象的时候,通常可以使用后两个特性来加以判断。
“面向对象”和“基于对象”都实现了“封装”的概念,但是面向对象实现了“继承和多态”,而“基于对象”没有实现这些。
从事面向对象编程的人按照分工来说,可以分为“类库的创建者”和“类库的使用者”。
使用类库的人并不都是具备了面向对象思想的人,通常知道如何继承和派生新对象就可以使用类库了,然而我们的思维并没有真正地转过来,使用类库只是在形式上是面向对象,而实质上只是库函数的一种扩展。
面向对象软件开发需要经过OOA(面向对象分析)、OOD(面向对象设计)和OOP(面向对象编程)三个阶段,OOA对目标系统进行分析并建立分析模型,并将之文档化,OOD用面向对象的思想将OOA的结果进行细化,得出设计模型。
OOA和OOD的分析、设计结果需要统一的符号的描述、交流并记录,UML就是这种用于描述、记录OOA和OOD结果的符号表示法。
UML统一了Booth、Rumbaugh和Jacobson的表示方法,而且对其作了进一步的发展,并最终统一为大众所接受的标准建模语言。
UML是一种定义良好、易于表达、功能强大且普遍使用的建模语言。
它的作用域不限于支持面向对象的的分析与设计,还支持从需求分析开始的软件开发的全过程。
具有相同或相似性质的一组对象的抽象就是类,类是对一类事物描述,是抽象的、概念上的定义;对象是实际存在的该类事物的每个个体,因而也称为实例(instance)。
对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。
类是用来描述一系列对象,类概述每个对象应包括的数据,类概述每个对象的行为特征。
因此我们可以把类理解成某种概念、定义,它规定了某类对象所共同具有的数据和行为特征。
类具有属性,它是对象状态的抽象,用数据结构来描述该类对象的共同数据特征:
类具有操作,它是对象行为的抽象,用操作名和实现该操作的方法来描述该类对象的共同行为。
在客观世界中有若干类,这些类之间有一定的结构关系。
通常有如下两种主要的结构关系:
Ø一般----特殊结构:
也被称为分类结构,这种分类结构关系就是典型的继承关系,Java语言使用extends关键字来表示这种分类结构,Java的子类是一种特殊的父类。
因此这种一般----特殊的结构关系其实是一种“isa”关系。
Ø整体----部分结构:
也被称为组装结构,这种分类关系就是典型的组合关系,Java语言通过在一个类里保存另一个对象的引用来实现这种组合关系,因此这种整体----部分结构关系其实是一种“hasa”关系。
所谓标识符就是用于给程序中变量、类、方法命名的符号。
Java语言的标识符必须以字母、下划线(_)、美元($)开头,后面可以跟任意数目的字母、数字、下划线(_)和美元符($)。
此处的字母并不局限于26个英文字母,而且可以包含中文字符、日文字符等。
标识符中不可以包含空格,不能使用Java的关键字和保留字,标识符的长度没有限制。
由于Java语言采用Unicode编码方式,因此Java的标识符可以使用Unicode所能表示的多种语言的字符。
Java语言是区分大小写的,因此abc和Abc是两个不同的标识符。
使用标识符时,需要注意如下规则:
Ø标识符可以有字母、数字、下划线(_)和美元符($)组成,其中数字不能开头。
Ø标识符不能是Java关键字和保留字,但可以包含关键字和保留字。
Ø标识符不能包含空格。
Ø标识符只能包含美元符($),不能包含@、#等其他特殊字符。
[5]高永强(美).Java编程艺术[M].清华大学出版社,2009-07.
Java工作平台,具体地讲,是指可运行Java程序的工作环境,即运行Java程序的计算机操作系统以及网络系统环境和设置。
不同于其他传统的计算机语言,如C++,Java是不依赖于任何具体的工作平台的计算机语言。
也就是说,Java可以在目前任何流行的工作平台上,如Windows、Unix/Linux,以及OS中运行。
由于Java,你可以在任何一个文本编辑软件中进行编辑,Java开发软件本身不提供文本编辑软件或IDE(IntegratedDevelopmentEnvironment)。
众多合作伙伴和第三方公司开发了各种可免费下载的IDE,使我们在对Java程序的代码进行编写、修改、保存、管理、乃至运行、差错时,并无遗憾。
JavaSe是Java软件包的标准版本,是Java语言的核心,是学习其他Java软件包,如JavaEE和javaMe的基础,它包括了Java语言所有基本主要功能。
Java的最大优越性在于互联网编程,但Java针对许多脱线(Off-line)应用软件,也提供单机,或称桌面应用编程技术。
实际上,因为桌面应用软件编程不涉及互联网、浏览器、网页等概念和技术,而是集中在Java语言本身的核心技术,因此它反而是学习Java的最佳起点。
Java编程的重要特点之一是充分利用API软件包。
其主要益处如下:
1.避免“重新发明车轮”。
即直接使用,或者继承使用API软件包,而不是再重复编写相似的代码。
2.提高编程效率。
“拿来主义”缩短编程时间。
3.提高程序的安全和可靠性。
NetBeansIDE是代码公开、免费下载、有中文版的JavaIDE。
它提供在各种工作平台的版本,并且有GUI建造器,可以用来开发以GUI为组件的Java应用软件。
NetBeans的许多功能和特点与Eclipse相似,例如程序按项目组建,自动语法纠错,Debugging,以及支持JUnit和Ant开发工具等。
可以在如下网站下载NetBeansIDE:
http:
//ww
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 文献 综述