计算机室
发布时间:
第1章 开 发 前 奏
本章内容将讲解Java Web开发环境相关软件(JDK、MyEclipse和Tomcat)和数据库软件(MySQL和Oracle)的下载、安装和运行。本章的操作如果没有具体说明,均是在Windows XP操作系统下进行。在具体开发Java Web方面的项目时,除了需要掌握好基础知识(Servlet、Java Sever Page和JavaBean),还需要熟悉各种框架技术。
1.1 Java Web应用概述
随着Internet的发展,绝大部分应用都由C/S(客户端/服务器)架构转换成B/S(浏览器/服务器)架构。为了让程序员更容易编写出Java Web应用程序,Java Web应用经历了最初的HTTP协议到Servlet、JSP技术的应用,再到J2EE的过程。
1.1.1 Java Web应用程序基础:HTTP协议
所有的Java Web应用程序都是基于HTTP协议,那么究竟什么是HTTP?HTTP全称为Hypertext Transfer Protocal,意思是超文本传输协议,主要用来定义客户端和服务器端的通信规范。
在Java Web应用中,客户端不仅可以从本地磁盘上打开网页文档,而且还可以通过HTTP网络协议从服务器上获取网页文档。客户端与服务器在具体交互时,首先两者需要建立TCP网络连接,接着客户端按照HTTP协议的规定向服务器发出请求信息,当服务器接收到客户端的请求后,再按照HTTP协议的要求将结果发送给客户端,具体过程如图1.1所示。
图1.1 交互过程
当网页提交请求给服务器时,经常会用到get(和post(方法,它们是HTTP协议中两个最简单的方法。get(方法主要用于要求服务器获得一个资源或返回该资源;post(方法不仅可以请求某个资源,而且还可以向服务器发送一些表单数据。
为了让客户端能够定位到服务器中的资源,通过URL定义Internet上的Web服务器中的每一个网页文件。那么究竟什么是URL?URL全称为Uniform Resource Locator,意思是统一资源定位符。URL地址中包含网络协议、服务器主机名(IP地址)、文件(其他
第1章 开发前奏
资源)路径和端口号。
说明:http://l27.0.0.1:8080/test/test.html地址中,http为网络协议,127.0.0.1为服务器地址,8080为端口号,/test/test.htm为文件资源地址。
1.1.2 Java Web容器(Servlet+JavaBean+JSP)
在Internet发展的初期,所有的Java Web应用包含的都是静态的HTML页面。所谓静态页面,是指把呈现给浏览者的信息固定写在HTML页面中,该页面不具备与用户交互的能力,即没有动态显示的功能。
随着时间的推移,动态页面逐渐取代了静态页面。对于动态页面,如果还使用简单的传统技术则显得有些无能为力。为了让Java Web应用中包含动态执行的页面,最早出现的是CGI技术方案,该技术方案使得服务器与客户端的交互不再需要使用静态的HTML页面。CGI技术方案不仅可以把数据库中的信息呈现给浏览者,而且还可以将浏览者的请求保存到数据库中。虽然CGI技术方案开启了动态Web应用的时代,但是其却存在很多缺点,其中最大的缺点是不仅开发难度非常大,而且性能上也存在许多限制。
1997年,在Java开发者的关注中,Servlet技术终于诞生。该技术是Sun公司提供的一种动态页面的解决方案,实现HTTP协议在Java平台的一个扩展。
Servlet API 1.0不仅能够开发HTTP协议方面的程序,而且还可以开发Web Server、Mail Server、Ftp Server和Applicaton Server等方面的服务,因此在编写服务器端的程序时都离不开Servlet语言。但是Servlet语言将程序的逻辑控制代码与输出网页文档内容混合在一起,使得控制网页文档内容的显示外观和整体布局很难。为了弥补Servlet语言的这些缺陷,Sun公司又在该语言的基础上推出了Java Sever Page(JSP)技术。
所谓JSP页面,就是在传统的HTML文件中加入Java程序片段和JSP标签。在该页面中可以通过Java程序片段操纵数据库、重定向网页等,实现建立动态网站所需要的功能。该页面的所有内容在服务器端执行,而传送给浏览者的仅为输出结果。使用JSP技术可以大大降低对客户端的要求。
为了提高代码的复用性、易维护性,Sun公司又推出了JavaBean组件技术。从本质上讲