1.3 Java Web应用程序的开发与部署
使用MyEclipse可以创建多种类型的项目,本节介绍如何在MyEclipse下创建Web项目以及如何部署、运行。
建立与部署Java Web项目的步骤:
(1)启动MyEclipse,选择或创建新(设置)工作区。
(2)建立Java Web项目。
(3)设计并编写有关的代码(网页和Servlet)。
(4)部署。
(5)启动Web服务器(Tomcat),然后运行程序。
(6)若需要部署到其他服务器,还需要生成并发布war文件。
1.3.1 Java Web应用程序的开发过程示例
本节创建一个Web项目,其工程名为:HelloApp,并设计一个JSP程序hello.jsp,运行后,在浏览器上显示页面运行结果:“HolleWord!”。
下面给出较详细的设计过程和设计说明。
第1步:启动MyEclipse,选择或创建新(设置)工作区。
启动MyEclipse,选择或设置工作区(工作区是项目所在的根目录位置),这里设置的工作区为:D:\java_web,如图1-6所示。启动后,首先进入欢迎页面,如图1-7所示。关闭该页面后,进入开发界面,如图1-8所示。
图1-6 设置工作区
图1-7 欢迎界面
图1-8 开发界面
第2步:设置运行服务器Tomcat 6.0和运行环境JDK。
MyEclipse支持多达20种应用服务器(Application Server),要想对这些服务器进行管理,要进行配置。 说明:MyEclipse是一个集成开发工具,在该工具中,已经内置服务器(MyEclipse-Derby和MyEclipse-Tomcat)以及JDK,用户可以不需要配置服务器和JDK在该开发工具中就可以部署和运行所设计的Web程序。但是,Web程序需要单独的运行环境,所以,在实际开发Web程序时,都需要配置自己所需要的服务器和运行环境JDK。
下面仅介绍对Tomcat服务器的配置和JDK的配置。
(1)利用菜单中的选项“Windows”->“Preferences”,进入图1-9所示的对话框,并按操作次序,设置Tomcat服务器,并进入图1-10的操作。找到Tomcat 6.0安装目录后,单击“确定”,就出现图1-11所示的结果(注意方框内的信息)。完成服务器设置即指定了运行Web工程所需要的服务器。
图1-9 配置Tomcat的有关选项
图1-10 查找Tomcat 6.0所在的位置
图1-11 配置Tomcat完成
(2)配置JDK
在图1-11中的Tomcat 6.0的节点下选择JDK子节点,进入图1-12界面,单击Add按钮,在弹出的界面窗口中单击Browse命令,选择JDK的安装目录,获得图1-13所示安装结果(注意:若不配置JDK,MyEclipse就使用其自带的默认的JDK)。
图1-12 选中JDK项显示默认的JDK设置
图1-13 修改后的JDK的配置
第3步:建立Java Web项目——HelloApp。
利用菜单:File->New->Web Project,如图1-14所示,确定后,进入图1-15所示的界面。单击Finish按钮进入如图1-16所示的所建的工程。单击工程名展开图1-16的helloapp,可得图1-17所示的工程目录。
图1-14 选择WebProject
图1-15 输入工程名并选择规范版本
图1-16 新建工程
图1-17 新建工程的目录结构
第4步:编写页面或java代码。
编写一个在浏览器上显示“Hello World!”的JSP页面,假设页面名称为:“hello.jsp”
(1)建立hello.jsp文档。选中工程的WebRoot目录,并选择“New”->“JSP”类型文档,如图1-18所示。
(2)在图1-19中,输入文档名称“hello.jsp”,进入图1-20所示的代码编写界面。
图1-18 建立jsp文档的操作
图1-19 输入hello.jsp文档名
图1-20 JSP代码编写界面
(3)在设计窗口,修改成如下代码,设计完成后保存该文件。
第5步:部署。
(1)选中工具栏中的部署按钮,如图1-21所示。
图1-21 部署按钮和启动服务器按钮
(2)在工程列表中,选择工程,如图1-22所示,然后单击“add”按钮(第1次部署)。若以前已经部署过,由于修改工程后,重新部署,则可单击“Redeploy”按钮,重新部署。完成后,进入图1-23选择要部署到的服务器,这里选择Tomcat 6.x。
图1-22 选择部署工程
图1-23 选择服务器Tomcat
(3)选择部署类型。按图1-24中的提示,选择部署类型。单击完成后,出现图1-25,表示部署成功。
图1-24 选择部署类型
图1-25 部署成功
(4)部署后,在服务器Tomcat的webapps的目录下,创建如图1-26所示的目录结构(注意其根目录:方框内的部分)。部署完成即是将开发的项目按服务器的目录要求放置到服务器指定位置。
图1-26 部署后的工程目录结构
第6步:运行项目。
(1)启动服务器。单击图1-27中的下拉列表,并从中选择Tomcat 6.x服务器,并单击“Start”命令,启动服务器。若在控制面板上无异常提示,如图1-28所示,则表示Tomcat正常启动。
图1-27 启动Tomcat服务器
图1-28 正常启动服务器的标记
(2)启动浏览器。在地址栏中输入网址:http://127.0.0.1:8080/helloapp/hello.jsp,如图1-29所示。运行后界面如图1-30所示,在网页上显示“Hello World!!”。若运行结果不是我们所希望的,则需要修改代码,并重复部署和运行操作。
图1-29 启动浏览器
图1-30 运行结果界面
1.3.2 Java Web应用程序的目录结构
Java Web应用由一组静态HTML页、Servlet、JSP和其他相关的组件组成。Web应用程序的配置信息存放在web.xml文件中。在发布某些组件时,必须在web.xml文件中添加相应的配置信息。
按照JavaEE规范的规定,一个典型的Web应用程序包含以下4个部分:
(1)公开目录。
公开目录存放所有可被访问的资源,如.html、.jsp、.gif、.jpg、.css、.js、.swf等。
(2)WEB-INF目录。
WEB-INF目录是一个专用区域,该目录下的文件只供容器使用,Web容器要求在应用程序中必须有WEB-INF目录。
WEB-INF目录中包含:
●WEB-INF/web.xml文件,配置信息文件。
●一个classes目录,WEB-INF/classes目录,编译后的Java类文件。
●一个lib目录,WEB-INF/lib目录,Java类库文件(*.jar)。
1.3.3 Java Web应用程序的打包与部署以及导入与导出
在前面的示例中,将开发的应用程序,直接部署到开发环境中的Tomcat下并运行。但若将一个Web程序部署到另一台计算机上,如何实现呢?如果将目前正在编辑、设计的Web程序,转移到另外一台计算机上继续编辑、设计,如何实现呢?下面分别给出实现方法。
1.Java Web应用程序的打包成War文档
将Web程序打包成Web归档(war)文件,其处理过程如下。
(1)选中要打包的工程,并选择“Emport…”命令,如图1-31所示,然后,在对话窗口中选择打包类型(WAR file),如图1-32所示。
(2)选择图1-32中的“Next”命令,进入图1-33所示对话框,选择或创建要打包到的路径,这里给出的打包路径是“E:\helloapp.war”。然后,单击“Finish”按钮,完成打包,这样就在E盘上建立了war文件“helloapp.war”。
图1-31 打包命令
图1-32 选择打包类型图
图1-33 创建打包路径
2.Java Web应用程序打包后的部署
可以将打包后的Web工程部署到另一台计算机的服务器下(Tomcat)或上传到其他网站的服务器上,实现重新部署。
将打包形成的war文件,直接复制(或上传)到Tomcat的webapps子目录下,系统自动解压。然后,重新启动服务器和浏览器,就可以像图1-30那样运行系统。
除了在Tomcat的webapps目录下创建(或部署)这个目录结构,还可以将此目录结构放在别的位置,然后通过配置虚拟目录的方法发布应用,具体方法在1.3.4节介绍。
3.Java Web应用程序的导入与导出
在开发Web工程时,经常需要将工程或工程中的一部分,从一个工作区移到另一个工作区,这里需要采用MyEclipse中的导出和导入操作。
(1)导出:首先选中要导出的文件(工程或某文件夹),然后导出。导出操作过程与工程打包类似,如图1-31、1-32和1-33所示。注意选择导出的类型。
(2)导入:其操作过程是在MyEclipse中,选择命令“File->Import->General->Existing Projects->Copy Into Workspace->Next->选择保存的目录->Finish”。注意,在导入时,要根据导出时创建的类型,选择导入类型。
(3)工程文件移植,并重新编辑:若将目前正在编辑、设计的Web程序转移到另外一台计算机上继续编辑、设计,需要如下两步。
●首先将工程保存,并复制到另一台计算机上。
●进入MyEclipse环境,将复制的工程导入即可,其操作过程是:在MyEclipse中,选
择命令“File->Import->General->Existing Projects->选中Copy Into Workspace->Next->
选择复制的工程目录->Finish”。
1.3.4 配置虚目录
在Tomcat服务器上部署Web程序时,默认的路径是Tomcat的根目录下的webapps目录,当不想把Web工程的文件部署在Tomcat的根目录下,可以采用虚拟目录的方法。
虚拟目录实际上是在服务器上做一个映射,把某个名称命名的目录指向另外一个实际上存在的目录。
在Tomcat中配置虚拟目录无须重新启动,只需要在Tomcat安装目录下的“conf/catalina/localhost”文件夹下新建一个.xml文件。比如,将文件helloapp.jsp文件放在d:/helloapp/目录下,需要用如下语句配置虚拟目录:
其中,<context>表示一个虚拟目录,它主要有两个属性,path为虚拟目录的名字,而docBase则是具体的文件位置。在这里配置的虚拟路径名称为jsp,文件的实际存放地址为d:/helloapp。将此文件保存为jsp.xml,这样就可以通过在地址栏中输入地址http://127.0.0.1/jsp/*.jsp来访问这个虚拟目录中的文件了。
例如,在d:/helloapp中存放一个名称为first.jsp的jsp文件,则可以在IE地址栏中输入“http://localhost:8080/jsp/first.jsp”来访问该文件,该文件代码如下:
浏览结果如图1-34所示。
图1-34 通过设置虚拟目录来访问页面