资源预览内容
第1页 / 共8页
第2页 / 共8页
第3页 / 共8页
第4页 / 共8页
第5页 / 共8页
第6页 / 共8页
第7页 / 共8页
第8页 / 共8页
亲,该文档总共8页全部预览完了,如果喜欢就下载吧!
资源描述
第1章背景知识简介本书的重点内容是讲解 Java Web 开发的知识,在本章中,首先简单介绍了 Java 语言的历史和现状, 然后对网站运行的基本知识进行了简单的介绍,在本章的最后,对比了各种动态开发语言之间,介绍了各种动态 Web 开发语言的优劣,通过本章知识的学习,读者可以掌握 Java Web 开发所需的基本知识。1.1Java 语言简介Java 是一种跨平台的面向对象语言,是由 Sun 公司于 1995 年推出,自从 Java 语言问世以来,受到 越来越多开发者的喜爱, 在 Java 语言出现以前,很难想象在 Window 环境下编写的程序可以不加修改就在 Linux 系统中运行,因为计算机硬件只识别机器指令,而不同操作系统中的机器指令是有所不同的,所以,要把一种平台下的程序迁移到另一个平台,必须要针对目标平台进行修改,如果想要程序运行在不同的操作系统,就要求程序设计语言能够跨平台,可以跨越不同的硬件、软件环境,而 Java 语言就能够满足这种要求。Java 语言的目标就是为了满足在复杂的网络环境中开发软件,在这种复杂的网络环境中,充满这各种各样的硬件平台和不同的软件环境,而 Java 语言就是针对这种复杂的平台环境设计,使用 Java 语言,可以开发出适应这种复杂网络环境的应用系统。1.1.1 Java 语言简介Java 是一种优秀的面向对象语言,在 Java 语言中,有着健壮的安全设计,它的结构是中立的,可以 一直到不同的系统平台,优秀的多线程设计也是 Java 语言的一大特色,但是 Java 语言的最大优势还是在于其对多种操作系统平台的支持,这种特性是其他编程语言所无法比拟的。Java 最初是 Sun 公司为消费电子产品设计的一种通用环境,最初的目的是为了开发一种与平台无关的编程语言,这种技术在开始的时候并没有太大用武之地,在网络出现以后,由于网络软硬件环境的复杂性,常见的编程语言逐渐不能适应这种环境的要求,而 Java 语言平台无关性的特性正好适应网络这个潮流。所以 Java 语言在网络出现以后得到突飞猛进的发展。目前,Java 语言最大的用途就是 Web 应用的开发,使用 Java 语言可以不用考虑系统平台的差异,在一种系统下开发的应用系统,可以不加任何修改就能运行在另一种不同的系统中,例如在目前的 Web应用开发中,很多用户会选择使用 Linux 或者是 Unix 作为服务器环境,而开发人员一般情况下会选择在 Windows 平台下开发,因为在 Windows 平台中的开发环境的效率要相对较高点,在这种情况下,就可以使用 Java 语言,由于 Java 语言是跨平台的,所以在 Windows 中开发出的系统,可以直接部署在 Linux或者是 Unix 的服务器系统中,这就是使用 Java 语言的便利之处。1.1.2 Java 语言的特性和优势在目前的软件开发中,尤其是应用系统的开发中,Java 语言成为大部分开发人员的选择,经常会有用户自己提出要使用 Java 语言进行开发,可见 Java 语言的发展已经是深入人心,Java 语言之所以如此 受欢迎,是由其自身的优点决定的,以下简单介绍 Java 语言的特性:(1) 平台无关性平台无关性是 Java 语言最大的优势,在 Java 中,并不是直接把源文件编译成硬件可以识别的机器指令,Java 的编译器把 Java 源代码编译为字节码文件,这种字节码文件就是编译 Java 源程序时得到的class 类文件,Java 语言的跨平台主要是指字节码文件可以在任何软硬件平台上运行,而执行这种类文件的就是 Java 虚拟机,Java 虚拟机是软件模拟出的计算机,可以执行编译 Java 源文件得到的中间码文件,而各种平台的差异就是由 Java 虚拟机来处理的,由 Java 虚拟机把中间码文件解释成目标平台可以识别的机器指令,从而实现了在各种平台中运行 Java 程序的目的,在 Java 语言中针对不同的平台环境提供了不同的 Java 虚拟机,例如在 Sun 的官方网站中就提供了 Windows、Linux 和 Solaris 等各种版本 Java虚拟机的下载。(2) 安全性在 C/C+中,指针的使用是一个高级话题,如果熟练掌握指针可以给程序的开发带来很大的方便,但是对于如果指针使用不当,就有可能带来系统资源泄漏,更严重的是错误的指针操作有可能非法访问的系统文件的地址空间,从而给系统带来灾难性的破坏,所以在 C/C+中,在使用指针的时候,需要非常的小心。Java 语言放弃了指针操作,在 Java 中,没有显式提供指针的操作,不提供对存储器空间直接访问的方法,所有的存取过程都有 Java 语言自身来处理,这样就可以保证系统的地址空间不会被有意或者无意的破坏。而且经过这样的处理,也可以避免系统资源的泄漏,例如在 CC+中,如果指针不及时释放,就会占用系统内存空间,大量的指针不及时释放就有可能耗尽可用的内存空间。在 Java 中就不用担心这样的问题,Java 提供了一套有效的资源回收策略,会自动回收不再使用的系统资源。从而保证了系统的安全性和稳定性。另外,Java 虚拟机在运行字节码文件的时候,会把 Java 程序的代码和数据限制在具体的内存空间内,不允许 Java 程序范围指定内存地址之外的空间,这样就可以保证 Java 程序不会破坏系统的内存空间,从而保证系统的安全性。(3) 面向对象面向对象是现在软件开发中的主流技术,在 Java 中同样吸取了各种面向对象语言的优点,从而更加彻底的实现了面向对象的技术,在 Java 程序中,基本所有的操作的都是在对象的基础上实现的,为了实现模块化和信息的隐藏,Java 语言采用了功能代码封装的处理,Java 语言对继承性的实现使功能代码可以重复利用,用户可以把具体的功能代码封装成自定义的类,从而实现对代码的重用。C+是一种经典的面向对象的语言,Java 语言继承了 C+中面向对象的理论,但是在 Java 中简化了这种面向对象的技术,去掉了一些复杂的技术,例如多继承、运算符的重载等功能。经过这样的处理,Java 中的面向对象技术变得简单容易掌握,同时保留这面向对象中核心的技术,可以是用户方便的享受面向对象技术带来的便利。(4) 异常处理在 Java 中,提供异常处理的策略,在 Java 程序的开发中,可以对各种异常和错误进行处理。这些错误包括程序在编译和运行阶段的错误和异常,例如空指针异常、数组越界异常、类型错误等。Java 中的异常处理可以帮助用户定位处理各种错误,从而大大提高了 Java 应用程序的开发周期。而且,这种异常策略,可以扑捉到程序中的所有异常,针对不同的异常用户可以采取具体的处理方法,从而保证了应用程序在用户的控制中运行,从而保证了程序的稳定和健壮。1.1.3 Java 语言的发展现状Java 语言并不是为网络环境设计的,用户可以使用 Java 语言来编写独立的桌面应用程序,在桌面应 用程序这个领域,Java 已经被各大厂商接受,例如 Oracle 数据库、Borland 的 JBuilder 开发环境,Eclipse开发环境等工具都是使用 Java 语言编写的,这些软件产品的性能都是非常优秀的,可见使用 Java 同样可以编写出功能强大的应用软件。而且,如果用户需要开发跨平台运行的软件的时候,Java 就成了唯一的选择,跨平台的需要也是各大厂商选择使用 Java 开发桌面应用程序的原因之一。虽然说 Java 语言并不是为网络环境设计的,但是 Java 语言目前还是主要被用于网络环境中,尤其是在服务器段的程序设计中,Java 语言的地位是其他动态语言所无法替代的。尤其是在 B/S 开发结构盛行的今天,Java 语言的地位更是举足轻重,例如,目前,各种信息管理系统都采用 B/S 进行开发,在 J2EE中,提供了优秀的 B/S 应用程序的解决方案。再加上 Java 语言跨平台、简单易用等特性,用户自然会选择 Java 语言进行开发。事实上,在服务器端的程序开发中,Java 所占的比例份额是占这绝对优势的。1.1.4 Java 语言的发展前景随着网络技术的急速发展,Java 语言必然会取得更大的发展,在这个复杂的网络环境中,Java 语言 有着广阔的前景。例如在如下几种开发需求中,Java 语言都有着很大的发展前景:(1)跨平台的应用软件开发随着 Linux、Unix 等操作系统逐渐被用户接受,Windows 的地位正面临着巨大的挑战,同时各大软件厂商也必须应对这样的变化,在这种情况下,需要兼顾各种操作系统用户的需要,当然可以选择正对不同操作系统开发出不同的软件版本,但是如果软件产品的规模超大的时候,这样的做法就不太合适,这时候就需要用到 Java,虽然桌面应用软件的开发不是 Java 的强项,但是 Java 语言跨平台的特性弥补了在这方面的不足,软件厂商采用 Java 语言进行开发,只需要开发一个版本就可以运行在不同的操作系统环境中,这就大大降低了重复开发的成本和时间。所以,Java 语言在跨平台应用软件开发领域的前景还是非常广阔的。(2)企业信息化解决方案企业信息化是目前的一大潮流,而且现在的信息化解决方案中,基本上采用的都是 B/S 架构,这样的架构方便应用程序的部署,而且节省了界面程序开发的成本,在客户端需要一个浏览器即可,所有的功能代码都在服务器实现。J2EE 是 Java 的企业版本,是 Sun 公司针对企业信息化提出的一套技术解决方案,使用这些技术,可以非常方便的实现企业信息化的需求,而且在近几年中,J2EE 正以飞快的速度向前发展,相信在未来几年中,Java 在企业信息化建设中会占到更大的比重。(3)嵌入设备J2ME 是 Java 针对嵌入设备,例如手机等设备设计的,在 J2ME 出现之前,在嵌入设置中编程只能选择使用 C/C+,这样底层的编程是相当复杂的,当 J2ME 技术问世以后,就可以使 Java 语言十分方便的开发嵌入设备中的应用软件,目前,J2ME 在手机中使用的比较多,各大手机厂商推出的手机产品中基本都会内置支持 Java 的功能。所以,J2ME 的使用也会越来越多。Java 语言不断的在发展和完善,现在各大厂商都在努力推动 Java 技术的发展,在这些厂商中间,Sun、IBM、Sybase 等做的都相当出色,而且在 Java 领域中,还有开源力量的支持,例如 Apache、JBoss等,这些开发力量给 Java 的发展带来巨大的推动作用,很多优秀的 Java 框架都是有这些开源力量开发维护的。在各方面力量的努力下,Java 语言会越来越趋于完美,使用 Java 开发会给用户带来更大的乐趣和更 高的效率。1.2Web 应用程序开发基本知识Java Web 开发也就是基于 B/S 结构的 Java 应用程序开发,在接下来的章节中,将介绍 Java Web 开 发最基本的知识,在这里不涉及具体的技术实现,只对 Java Web 开发的基本原理进行介绍。1.2.1 Web 应用程序的运行原理在传统的 Web 应用程序开发中,需要同时开发客户端和服务器端的程序,由服务器端的程序提供 基本的服务,客户端是提供给用户的访问接口,用户可以通过客户端的软件访问服务器提供的服务,这种 Web 应用程序的开发模式就是传统的 C/S 开发模式,在这种模式中,由服务器端和客户端的共同配合来完成复杂的业务逻辑。例如以前的网络软件中,一般都会采用这种模式,而且现在的网络游戏中,一般还会采用这种 Web 开发模式,在这些 Web 应用程序中,都是需要用户安装客户端才可以使用的。在目前的 Web 应用程序开发中,一般情况下会采用另一种开发模式,在这种开发模式中,不在单独开发客户端软件,客户端只需要一个浏览器即可,这个浏览器在每个操作系统中都是自带的,软件开发人员只需专注开发服务器端的功能,用户通过浏览器就可以访问服务器端提供的服务,这种开发模式就是当前流行的 B/S 架构,在这种架构中,只需要开发服务器端的
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号