第1章 Java Web开发概述
Java Web是用Java技术来解决相关Web领域的技术总和。本章首先介绍了Java语言的历史和现状,然后对Web开发的基础知识进行了简单介绍,最后介绍了Java Web开发环境的搭建过程,为后面的学习做好准备。
1.1 背景知识简介
Java是Sun公司(已被甲骨文公司收购)于1995年正式推出的面向对象的程序设计语言,它具有简单、面向对象、跨平台、健壮和安全、可移植性、支持网络编程,以及支持多线程等许多优良特性,特别适用于Internet应用程序的开发。
1991年,Sun公司成立了由James Gosling领导的Green Project研发小组,其目的是研发一种分布式系统结构,使其能够在各种家用消费电子产品上运行。最终,Green项目组开发出了一种新的编程语言——Oak(Java的前身)。1994年,随着Internet的快速发展,Sun公司看到了Oak在计算机网络上的广阔应用前景,于是对Oak做了进一步的改进,1995年5月,Oak以Java的名称正式发布。目前,Java已成为网络编程的首选语言。
Sun公司于1996年1月23日发布了JDK 1.0。1998年12月4日,Sun发布了Java历史上最重要的一个JDK版本——JDK 1.2。这个版本标志着Java已经进入Java 2时代,这个时期也是Java飞速发展的时期。目前Java 2平台有3个版本。
1.Java SE
Java SE(Java Platform,Standard Edition)称为Java平台标准版,主要用于开发Java桌面应用程序和低端的服务器应用程序,也可以开发Java Applet程序。
2.Java EE
Java EE(Java Platform,Enterprise Edition)称为Java平台企业版,主要用于构建企业级的服务应用。Java EE是在Java SE的基础上构建的,增加了附加类库,可以支持目录管理、交易管理和企业级消息处理等功能。
3.Java ME
Java ME(Java Platform,Micro Edition)称为Java平台微型版,主要用于嵌入式的消费产品中,如移动电话、掌上电脑或其他无线设备等。
1.2 Web开发基础知识
随着网络技术的不断发展,各种网络程序开发体系结构应运而生,其中基于客户端/服务器的C/S结构和基于浏览器/服务器的B/S结构成为两大主流。Java Web开发是基于B/S结构的Java应用程序开发。
1.2.1 Web程序运行原理
在B/S结构中,用户通过浏览器向Web服务器端发送请求,由Web服务器处理用户的请求并将处理结果返回客户端。Web程序的工作流程如图1-1所示,具体操作步骤如下。
1)用户通过浏览器向Web服务器发送请求(步骤a),Web服务器接收到该请求后,根据请求的文件名在Web服务器中查找对应的文件(步骤b),并根据文件的扩展名(如.html或.jsp)来判断当前所请求的是静态页面还是动态页面。
2)当请求页面为静态页面时,则直接将静态页面返回(步骤c),并将该页面作为响应发送给客户端浏览器(步骤e)。
3)当请求页面为动态页面时,Web服务器首先执行页面中的代码部分;如果动态页面中存在数据库操作代码,Web服务器还要负责完成与数据库服务器的信息交互(步骤d),之后再将动态页面解释为静态页面(步骤c);最后Web服务器将该静态页面作为响应发送给客户端浏览器(步骤e)。
图1-1 Web程序的工作流程
1.2.2 Web服务器介绍
市场上有很多种Web服务器,UNIX和Linux平台下常用的Web服务器有Apache的Tomcat、IBM公司的WebSpherer和BEA公司的WebLogic等,而Windows NT/2000/2003平台下最常用的服务器则是微软公司的IIS(Internet Information Server)。
下面介绍几种常用的Web服务器。
1.Apache Tomcat
Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun公司和其他一些公司及个人共同开发而成。由于有了Sun公司的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现。因为Tomcat技术先进,性能稳定,而且是免费的,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。
2.IBM WebSphere
WebSphere应用服务器是一种功能完善、开放的Web应用程序服务器,是IBM电子商务计划的核心部分,是基于Java和Servlet的Web应用程序运行环境,为Web站点提供了所需的一切服务,包括项目管理、连接数据库、Java Servlet代码生成器、HTML编辑器和网站发布等,为开发Servlet和JavaBean提供了多种向导。WebSphere适应Web应用程序服务器的需要,范围从简单到高级直到企业级。
3.BEA WebLogic
WebLogic最早由WebLogic Inc.开发,后并入BEA公司,最终BEA公司又并入甲骨文公司。WebLogic是一个Web应用服务器,确切地说是一个基于Java EE架构的中间件,是用于开发、集成、部署与管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。由于WebLogic具有全面的功能、对开放标准的遵从性、多层架构,并支持基于组件的开发,基于Internet的企业都选择它来开发和部署最佳的应用。
4.Microsoft IIS
Microsoft的Web服务器产品为Internet Information Server(IIS),IIS是允许在公共Intranet或Internet上发布信息的Web服务器。IIS提供了一个图形界面的管理工具,称为Internet服务管理器,可用于监视配置和控制Internet服务。
IIS是一种Web服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,使得在网络(包括因特网和局域网)上发布信息成了一件很容易的事情。
1.2.3 Web开发流程
在Web应用程序的开发中,有两种主流的开发体系结构:C/S架构和B/S架构。
所谓C/S架构,又称Client/Server或客户端/服务器模式。服务器端通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、Informix或SQL Server;客户端则需要安装专用的客户端软件。在这种架构方式中,客户端应用程序负责用户业务逻辑的处理,服务器端仅对重要的过程和数据库进行处理和存储,如图1-2所示。
图1-2 C/S架构
所谓B/S架构,又称Browser/Server或浏览器/服务器模式。在这种架构方式中,客户端只需要有通用的浏览器软件,将开发的Web应用程序部署在Web服务器中即可,通过浏览器向Web服务器发送请求,就可以访问服务器端提供的所有服务,如图1-3所示。B/S 架构已经成为当今应用软件的首选体系结构。
图1-3 B/S架构
无论采用哪种体系结构,Web开发通常都遵循一个基本的流程:需求分析阶段、设计阶段、开发阶段、测试阶段、运行与维护阶段,如图1-4所示。
首先,通过对用户的调研,结合分析市场现状及发展趋势完成项目的需求分析。然后,根据需求分析结果进行系统的分析和设计,确定系统的规模和目标,规划开发方案,并完成数据库设计。在开发阶段中,由于Web标准是结构和表现相分离的,所以设计师和程序员可以并行开发,后期再完成整个网站的整合。在整个Web项目开发完成后,需要设计测试案例,测试项目功能的实现情况。最后,将整个Web项目部署到Web服务器上,运行并维护。
图1-4 Web开发流程
1.3 Java Web开发平台的搭建
开发Java Web应用程序需要运行环境和开发工具,因此,搭建一个方便、快捷、高效的开发平台就显得尤为重要。目前,比较常用的开发平台和工具包括JDK、Tomcat和MyE-clipse等。其中,JDK是Java语言的开发环境,Tomcat是Web服务器,MyEclipse是开发Java EE的集成开发环境。
本书以Windows 64位操作系统为例,采用JDK 1.7+Tom-cat 6.0+MyEclipse 6.6作为开发与运行环境。读者可根据自己系统的要求下载相应的版本。
1.3.1 Java环境变量配置
JDK(Java Development Kit)是Java语言的软件开发工具包,是整个Java的核心,它提供了编译和运行Java程序所需的各种工具和资源,包括Java编译器、Java运行时环境(Java Runtime Environment,JRE),以及常用的Java类库等。由于Java Web使用Java语言作为开发语言,因此,要想开发与运行Java Web应用程序,就必须有JDK的开发环境。本书中采用的是JDK 1.7版本,读者可到甲骨文公司的官方网站进行下载,网址为http://www.oracle.com/ technetwork/cn/java/javase/downloads/jdk7-downloads-1880260.html。
1.JDK的安装
下载后的文件名称为jdk-7u79-windows-x64.exe,双击该文件即可开始安装。具体安装步骤如下。
1)双击jdk-7u79-windows-x64.exe文件,在弹出的对话框中单击“下一步”按钮。
2)在弹出的“定制安装”对话框中,设置JDK的安装路径并选择安装组件。单击“更改”按钮,将安装路径更改为D:/Java/jdk1.7.079,其他采用默认设置,如图1-5所示,单击“下一步”按钮,开始安装。
3)在安装的过程中,将会弹出设置JRE安装路径的对话框。单击“更改”按钮,将安装路径更改为D:/Java/jre7,如图1-6所示,单击“下一步”按钮,继续安装JRE。
图1-5 设置JDK的安装路径
图1-6 设置JRE的安装路径
4)在弹出的安装完成对话框中,单击“关闭”按钮,即可完成JDK的安装。
2.JDK的配置与测试
JDK安装完成后,需要设置环境变量并测试JDK配置是否成功。具体操作步骤如下。
1)在桌面上右击“计算机”图标,在弹出的快捷菜单中选择“属性”命令,弹出“系统”对话框,选择“高级系统设置”选择卡。在弹出的“系统属性”对话框中选择“高级”选项卡,然后单击“环境变量”按钮,弹出“环境变量”对话框。
2)单击“系统变量”选项组中的“新建”按钮,弹出“新建系统变量”对话框。在“变量名”文本框中输入JAVA_HOME,在“变量值”文本框中输入JDK的安装路径D:\ Java\jdk1.7.0_79,如图1-7所示。单击“确定”按钮,完成系统变量JAVA_HOME的创建。
3)在系统变量列表框中查看是否存在PATH变量(注意:不区分大小写)。如果不存在,则新建系统变量PATH;若存在,则选中该变量,单击“编辑”按钮,弹出“编辑系统变量”对话框。在“变量值”文本框中原有变量值的最前面增加变量值“%JAVA HOME%\bin;”,如图1-8所示。单击“确定”按钮,完成系统变量PATH的编辑。
图1-7 新建JAVA HOME变量
图1-8 编辑PATH变量
4)用同样的方法新建系统变量CLASSPATH,设置变量值为“.;%JAVA_HOME%\lib\ dt.jar;%JAVA_HOME%\lib\tools.jar”,如图1-9所示。单击“确定”按钮,完成系统变量的创建。
5)环境变量设置完成后,还要测试JDK是否配置成功。
单击“开始”按钮,选择“运行”命令,在弹出的“运行”对话框中输入cmd命令,单击“确定”按钮,进入DOS命令窗口。在命令提示符后输入javac命令,按下<Enter>键,如果系统输出javac命令的使用帮助信息,如图1-10所示,则表明JDK配置成功。
图1-9 新建CLASSPATH变量
图1-10 JDK配置成功界面
1.3.2 集成开发环境MyEclipse的下载和配置
MyEclipse是基于Eclipse开发的功能强大的企业级集成开发环境,主要用于Java、Java EE和移动应用的开发,支持代码编写、调试、测试及发布等功能,提供了对UML、Ajax、Web、Web Services、J2EE、JSP、XML、Struts、JSF、Java Persistence、EJB、扩展数据库,以及各种应用服务器的集成支持。
1.下载MyEclipse
MyEclipse的官方网站地址是http://www.myeclipseide.com/,可根据需要购买或者下载试用版的MyEclipse。本书使用的是MyEclipse 6.6版本。下载后的文件名称为MyEclipse_ 6.6.0_E3.3.2_Installer.exe,双击该文件即可开始安装。具体安装步骤如下。
1)双击MyEclipse_6.6.0_E3.3.2_Installer.exe文件,在弹出的对话框中单击Next按钮,如图1-11所示。
2)在弹出的“许可协议”对话框中,选择I accept the terms of the license agreement(接受许可协议)单选按钮,如图1-12所示。单击Next按钮,进入选择安装路径对话框,单击Change按钮,将安装路径更改为D:\MyEclipse 6.6,如图1-13所示,也可以使用默认路径。
图1-11 MyEclipse安装启动界面图1-12安装许可协议6
图1-12 安装许可协议6
3)设置完安装路径后,单击Next按钮,将显示准备安装的提示界面,单击Install按钮,开始进行安装。安装完成后,将弹出如图1-14所示的对话框,提示安装已完成。单击Finish按钮,即可完成MyEclipse的安装。
图1-13 选择安装路径
图1-14 安装完成
2.配置MyEclipse
MyEclipse安装完成后,单击“开始”按钮,选择“所有程序”→MyEclipse 6.6→MyE-clipse 6.6命令,启动MyEclipse。启动时,首先会提示选择工作空间,如图1-15所示。如果要改变工作空间默认值,可以单击Browse按钮,在弹出的对话框中选择路径。设置完成后,单击OK按钮,进入MyEclipse主界面。
如果是第一次启动MyEclipse,会显示欢迎界面,如图1-16所示,关闭Welcome页面将进入工作窗口,如图1-17所示。
图1-15 选择工作空间
图1-16 MyEclipse主界面
图1-17 MyEclipse工作窗口
1.3.3 Tomcat服务器配置
Tomcat服务器是一个免费开源的Web应用服务器,属于轻量级应用服务器,通常应用于中小型系统和并发访问用户不是很多的场合,是开发和调试Java Web应用程序的首选。
1.安装Tomcat
本书使用的是Tomcat 6.0版本,读者可自行到Tomcat官方网站下载,网址为http:// tomcat.apache.org/download-60.cgi。下载页面上有两种类型的下载文件:.zip压缩文件和.exe安装程序,对于初学者,建议下载Tomcat安装程序,即32-bit/64-bit Windows Serv-ice Installer文件。下载后的文件名称为apache-tomcat-6.0.44.exe,双击该文件即可开始安装。具体安装步骤如下。
1)双击apache-tomcat-6.0.44.exe文件,在弹出的对话框中单击Next按钮,如图1-18所示。
2)在弹出的“许可协议”对话框中,单击I Agree按钮,弹出“选择组件”对话框,可选择安装的组件,如图1-19所示,这里保持默认设置,单击Next按钮。
图1-18 Tomcat安装启动界面
图1-19 选择组件
3)在弹出的“基本配置”对话框中,可设置HTTP协议端口号、管理员登录的用户名和密码。Tomcat服务器默认的HTTP/1.1端口号是8080,如果当前机器上的8080端口已被占用或已被禁用,可以设置为其他端口,如9080等。设置完成后,单击Next按钮,如图1-20所示。
4)在弹出的“选择Java虚拟机”对话框中,选择JRE的安装路径,一般情况下,安装程序会自动找到Java虚拟机安装路径,如图1-21所示,设置完成后单击Next按钮。
图1-20 基本配置
图1-21 选择Java虚拟机
5)这时将弹出“选择安装路径”对话框,设置安装路径为D:\Tomcat 6.0,如图1-22所示,然后单击Install按钮,开始进行安装。安装完成后,会弹出如图1-23所示的对话框,单击Finish按钮,完成Tomcat的安装。
图1-22 选择安装路径
图1-23 安装完成
2.配置Tomcat
Tomcat安装完成后,单击“开始”按钮,选择“所有程序”→Apache Tomcat 6.0→Configure Tomcat命令,将弹出Tomcat属性对话框,如图1-24所示。单击Start按钮,将启动Tomcat服务。单击Stop按钮,将关闭Tomcat服务。如果需要自动启动Tomcat,可将Star-tup type(启动类型)设置为Automatic。
启动Tomcat服务器后,在浏览器地址栏中输入http://localhost:8080/或http:// 127.0.0.1:8080/,如果出现的是如图1-25所示的测试界面,则表示Tomcat已安装成功并正常启动。
图1-24 Tomcat属性对话框
图1-25 Tomcat测试界面
1.3.4 部署项目
虽然MyEclipse 6已经内置了一个简易的Tomcat,但在实际开发过程中,最常用到的还是用单独安装的Tomcat作为服务器进行Web应用程序的开发。
下面将介绍如何在MyEclipse中配置Tomcat服务器,具体操作步骤如下。
1)打开MyEclipse,在菜单中选择windows→preferences命令,在弹出的Preferences对话框左侧列表框中依次展开MyEclipse Enterprise Workbench→Servers→Tomcat结点,选择Tomcat 6.x选项,设置右侧区域中的Tomcat server为Enable,然后单击Tomcat home directory文本框右侧的Browse按钮,选择Tomcat的安装路径。一般情况下,后面的两个文本框将会自动填充内容,如图1-26所示。
图1-26 Preferences对话框
2)展开左侧列表框中的Tomcat 6.x结点,并选择JDK选项,设置为自己安装的JDK,如图1-27所示。如果在Tomcat JDK name下拉列表框中没有想要使用的JDK,则可以单击其右侧的Add按钮,弹出Tomcat>Add JVM对话框,单击Browse按钮,选择JDK的安装路径,其余文本框将自动填充,如图1-28所示。单击OK按钮,返回Preferences对话框,单击该对话框中的OK按钮,完成Tomcat服务器的配置。
图1-27 配置JDK
图1-28 选择JDK安装路径
3)在MyEclipse主界面的工具栏上,单击服务器按钮右侧的下拉按钮,可以看到已经配置好的Tomcat 6.x,如图1-29所示,选择Start选项,启动服务。如果在Console视图中出现如图1-30所示的提示信息,则表明服务器运行成功。至此,在MyEclipse中配置Tom-cat服务器成功。
图1-29 启动服务
图1-30 Console视图
1.3.5 创建第一个Java Web项目
本节通过一个简单的实例说明Java Web项目的创建及执行过程。
1.创建Java Web项目
以创建Hello项目为例,具体操作步骤如下。
1)在MyEclipse菜单中选择File→New→Web Project命令,弹出New Web Project对话框,在Project Name文本框中输入Hello,并在J2EE Specification Level选项组中选择Java EE 5.0单选按钮,如图1-31所示,单击Finish按钮,完成Hello项目的创建。
2)在MyEclipse左侧的Package Explorer视图中会显示出刚刚创建的Hello项目,如图1-32所示。
图1-31 New Web Project对话框
图1-32 Package Explorer视图
2.创建JSP页面
1)在图1-32的Hello项目中,右击WebRoot选项,在弹出的快捷菜单中依次选择New→Other命令,在弹出的New对话框中依次展开MyEclipse→Web结点,选中结点下的JSP(Basic templates)选项,然后单击Next按钮。
2)弹出New JavaServer Page对话框,在File name文本框中输入Hello. jsp,然后单击Finish按钮,如图1-33所示。
图1-33 New JavaServer Page对话框
3)文件创建完成后,MyEclipse会在编辑窗口中自动以默认的JSP代码编辑器打开文件Hello. jsp,修改页面代码如下。
4)编辑完成后,保存JSP页面。
3.测试Web应用程序
1)将项目发布到Tomcat中。单击工具栏中的部署按钮
,弹出Project Deployments对话框,在Project下拉列表框中选择要发布的项目Hello。
2)然后单击右侧的Add按钮,弹出New Deployment对话框,在Server下拉列表框中选择Tomcat 6.x选项,如图1-34所示,单击Finish按钮,返回Project Deployments对话框。设置完成后的该对话框如图1-35所示,再单击OK按钮,即可完成项目的发布。
3)确认Tomcat服务器已经成功启动,然后打开浏览器,在地址栏中输入http://local-host:8080/Hello/Hello.jsp进行访问,运行结果如图1-36所示。
图1-34 New Deployment对话框
图1-35 Project Deployments对话框
图1-36 运行结果
本章小结
本章主要对Java Web开发中的一些基本知识进行了简单介绍,重点介绍了如何搭建Java Web的开发环境,包括JDK、Tomcat及MyEclipse的安装,以及如何在MyEclipse中部署Tomcat。最后,通过创建一个简单的Java Web应用程序,使读者能够快速掌握如何使用开发工具来创建Java Web应用程序。
实践与练习
一、选择题
1.面向对象的三大特性不包括( )。
A.封装 B.继承 C.多态 D.消息通信
2.Tomcat的默认端口是( )。
A.80 B.8088 C.8000 D.8080
3.搭建Java Web运行环境时,若Web服务器选用Tomcat,以下说法正确的是( )。
A.先安装Tomcat,再安装JDK
B.先安装JDK,再安装Tomcat
C.无需安装JDK,只安装Tomcat
D.JDK和Tomcat的安装顺序没影响
4.以下哪个不是UNIX和Linux平台下常用的Web服务器?( )
A.Apache Tomcat B.IBM WebSpherer C.BEA WebLogic D.Microsoft IIS
5.Tomcat是一个( )容器。
A.EJB B.JSP/Servlet C.Applet D.Swing组件
二、简答题
1.简述Web应用程序的运行原理。
2.简述Web开发流程。
3.JDK安装完成后,需要配置哪些环境变量?
实验指导
题目1 搭建Java Web开发环境
1.任务描述
掌握Java Web开发环境的安装与配置。
2.任务要求
1)安装JDK 1.7,并配置环境变量。
2)安装Tomcat,并测试。
3)安装MyEclipse,并配置Tomcat。
3.操作步骤提示
1)安装完JDK后,需要配置环境变量:JAVA HOME、PATH、CLASSPATH。
2)安装完Tomcat后,需要在浏览器中输入http://localhost:8080来测试Tomcat是否安装成功。运行结果参见本书中的图1-25。
题目2 创建第一个Java Web程序
1.任务描述
在页面中输出1+2+3+…+50的结果。
2.任务要求
使用for循环计算1~50的和,并在页面上输出结果。
3.知识点提示
本任务主要用到以下几个知识点。
1)可以在HTML页面文件中加入Java代码块,Java代码块要放在﹤%...%﹥标记符号中。
2)使用﹤%=...%﹥输出表达式的值,如输出变量sum的值,可使用﹤%=sum%﹥。
4.操作步骤提示
1)创建Java Web项目。
2)创建JSP页面。
3)完成Java代码块。
4)将项目发布到Tomcat中。
5)在浏览器中测试程序的运行情况。运行结果如图1-37所示。
图1-37 SX 2运行结果