2.1 JSP与服务器
客户端通过表单将数据提交到action指定的目的地址。在这个目的地址指向的页面,需要将数据提取出来。这就需要一个动作脚本来完成动态网页技术中的数据交互。这种动作脚本与HTML语言相结合来获取和处理表单提交的数据。在Java Web中,这种用于服务器端处理数据的动作脚本就是JSP。
JSP是Java Server Pages的简称,它是在传统的HTML文件中插入Java程序段和JSP标记,形成的JSP(.jsp)文件。它是一种动态网页技术,遵从动态网页的技术标准。
2.1.1 JSP在服务器上的工作原理
JSP 文件是运行在服务器端的脚本文件,它由 HTML 语言、Java 代码和一些独特的 JSP标记组成。由于它包含了Java程序段,所示它需要被服务器编译才能运行。我们知道JSP页面被部署在Web服务器或应用服务器上。整个JSP工作机制如图2.1所示。
服务器管理JSP页面分为两个阶段:转换阶段和执行阶段。
(1)当有一个JSP请求到来时,服务器会首先检验JSP页面的语法是否正确,将JSP转换成Servlet(Servlet就是用Java语言实现的CGI程序,后面章节将详细介绍)源文件,然后调用javac工具类编译Servlet源文件生成 .class文件,这就是转化阶段。
(2)Servlet容器加载转化后的Servlet类,实例化一个对象处理客户端的请求。在请求处理完成后,响应对象被服务器接受,服务器将 HTML 格式的响应信息发送给客户端,这一阶段便是执行阶段。
JSP页面的第一次执行要花费一些时间,去完成JSP页面到Servlet的转换。当再次请求时, JSP服务器就会直接执行第一次请求时产生的Servlet,而不再进行JSP文件的转换。
图2.1 JSP工作机制
2.1.2 Web服务器Tomcat的搭建
JSP页面必须被部署和运行于Web服务器中,所谓的Web服务器是指为特定组件提供服务的一个标准化的运行时的环境,其中封装了JSP运行所需要的底层API,为组件提供事务处理,数据访问,安全性,持久性等服务。
Web的服务器有很多种,其中Tomcat就是一个免费并且开源的JSP服务器。它是Apache软件基金会Jakarta项目中的一个核心项目。它由Apache、Sun 和其他一些公司及个人共同开发而成。目前它是使用最广泛的JSP服务器。到目前为止,它的最新版本是Tomcat 7.0。读者可以从Apache Tomcat官方网站(http://tomcat.apache.org/)上选择下载Tomcat 7.0,如图2.2所示。
图2.2 Tomcat下载版本
注意:Tomcat 7.0.29是笔者写作时的最新版本。读者下载时,可能是更新的版本。但是只要大版本号一致,就不会影响读者学习。
在单击Download之后,我们进入具体的版本选择页面,在这里选择“32-bit/64-bit Windows Service Installer”版本进行下载,如图2.3所示。
图2.3 Tomcat具体版本下载
下载完成后,双击下载的Tomcat安装文件apache-tomcat-7.0.29.exe,弹出安装对话框。整个安装过程如图2.4和图2.5所示。
图2.4 Tomcat的安装过程
在单击“Next”按钮之后,我们要对 Tomcat 的路径进行配置。首先选择读者计算机中所安装Java的JRE地址,然后设置Tomcat的安装路径。为了方便将来在Tomcat中部署应用程序,我们建议读者选择比较浅的路径进行安装,比如“D:\Tomcat7.0”,如图2.5所示。
图2.5 Tomcat的安装路径
单击“Install”按钮,完成Tomcat的安装,如图2.6所示。
图2.6 Tomcat安装完成
安装完成后,会在系统栏中加载一个绿色的服务器图标,如图2.7所示。
图2.7 右下角的服务器图标
打开浏览器,输入http://localhost:8080/。会显示出一个如图2.8所示的界面,这表示Web服务器Tomcat已经成功地启动了。
图2.8 启动后的首页
在Tomcat上发布Web应用之前,我们首先先了解一下Tomcat的目录结构。打开Tomcat的安装路径后,如图2.9所示。
图2.9 Tomcat的目录结构
具体的每个文件夹的描述如表2.1所示。
表2.1 Tomcat目录描述
2.1.3 安装MyEclipse
MyEclipse是目前应用最为广泛的Java应用程序集成开发环境。它是由Genuitec公司开发的一款商业化软件。用户可以通过购买或互联网下载获得其安装包。本书所应用的为最新的MyEclipse 10.0版本。
首先我们双击 MyEclipse 的安装文件 myeclipse-10.0-offline-installer-windows.exe,开始MyEclipse的安装,安装过程如图2.10和图2.11所示。
图2.10 MyEclipse的安装过程一
在下面的安装过程中我们需要为MyEclipse选择具体的安装版本,请读者根据自己计算机的系统信息进行安装,如图2.11所示。
图2.11 MyEclipse的安装过程二
单击“Finish”按钮完成MyEclipse的安装,系统自动显示MyEclipse的启动界面,如图2.12所示。
图2.12 MyEclipse的启动界面
接着我们就进入了MyEclipse的工作台窗口,其由菜单栏、工具栏等几部分构成,如图2.13所示。
图2.13 MyEclipse的工作台窗口
2.1.4 MyEclipse中集成Tomcat服务器
在MyEclipse中其实已经自带了一个Tomcat服务器,但是为了日后程序的开发、部署和运行更加方便和快捷,我们将用户安装的Tomcat服务器集成到MyEclipse中。具体的集成步骤如下所示。
1 选择MyEclipse菜单栏中的“Window”→“Preferences”命令,在弹出的窗口中选择“MyEclipse”→“Servers”→“Tomcat”,如图2.14所示。
图2.14 选择服务器配置
2 根据我们安装的Tomcat的版本选择Tomcat 7.x链接进行配置,系统出现Tomcat 7.x服务器配置窗口,首先我们将“Tomcat Server”选项设置为“Enable”,然后单击“Tomcat home directory”选项后的“Browse…”按钮,选择Tomcat 7.x的安装目录。设置完成后如图2.15所示。
图2.15 选择Tomcat 7.x的安装目录
3 这样我们就基本完成了MyEclipse中Tomcat的集成,然后我们单击MyEclipse工具栏中的“Run MyEclipse Servers”按钮,将会看到Tomcat 7.x服务器。单击“Start”按钮,启动Tomcat服务器,如图2.16所示。
图2.16 启动Tomcat 7.x服务器
打开浏览器,输入http://localhost:8080/,若显示如图2.17所示的Tomcat服务器默认首界面,就说明我们可以在MyEclipse中直接控制Tomcat服务器了。
图2.17 Tomcat服务器默认首界面
2.1.5 MyEclipse中JSP页面的创建
完成了各项软件的配置之后,我们一起来学习如何在MyEclipse中进行JSP页面的创建。在MyEclipse中,JSP页面是以Web项目的形式组织起来的。所以要创建JSP页面之前,必须要创建一个Web项目,创建的具体步骤如下。
1 选择MyEclipse菜单栏中的“File”→“New”→“Project…”命令,将显示如图2.18所示的项目对话框,在其中选择“Web Project”选项。
图2.18 项目对话框
2 单击“Next”按钮,启动创建Web项目向导。在Project Name文本框中输入项目名称FirstWeb,然后选择J2EE Specification Level下的Java EE 6.0单选按钮。最后单击“Finish”按钮完成Web项目的创建,如图2.19所示。
图2.19 创建Web项目向导窗口
注意:J2EE Specification Level 选择哪个版本取决于读者所应用服务器版本。例如Tomcat 4.x以下版本只能选择J2EE 1.4,而Tomcat 6.x服务器就可以选择Java EE 5.0。我们应用的Tomcat 7.x,所以建议选择Java EE 6.0。
Web项目创建完成后,就可以在该项目中创建JSP页面了,具体步骤如下。
1 选择MyEclipse菜单栏中的“File”→“New”→“JSP”(Advanced Templates)命令,将显示 JSP 创建窗口。我们可以在此创建窗口中确定 JSP 页面的名称和存储路径,如图2.20所示。
图2.20 创建JSP向导窗口
2 单击“Finish”按钮,完成JSP页面创建,系统会自动生成如图2.21所示的界面。
图2.21 JSP编辑器
2.1.6 MyEclipse中Web项目的发布和运行
Web 项目在开发完成之后,需要发布到 Web 服务器上才能够被访问和运行。所以我们必须要掌握如何在MyEclipse中进行Web项目的发布和运行。在开发过程中Web项目的发布和运行的步骤如下所示。
1 在 Package Explorer 视图中,右键单击 FirstWeb 项目,在弹出的快捷菜单中选择“MyEclipse”→“Add and Remove Project Deployments…”命令,系统出现如图2.22所示的项目部署对话框。
图2.22 项目部署对话框
2 单击“Add”按钮,出现创建新部署对话框,选择Tomcat 7.x部署到服务器上,并在Deploy type中选择Exploded Archive开发模式,如图2.23所示。
图2.23 创建新部署
3 单击“Finish”按钮,项目将部署到所选择的服务器中,如图2.24所示。
图2.24 项目部署成功
4 启动Tomcat服务器,输出的日志就会自动显示在Console视图中,便于读者浏览和判断服务器是否正常启动完毕,如图2.25所示。
图2.25 Tomcat启动成功日志输出