第1章 开发与运行环境的安装及配置
【本章导读】
“工欲善其事,必先利其器”,学习软件开发第一步要做的就是学会搭建开发环境。本章将和读者一起搭建起全书所有实例使用的开发环境:JDK 1.6+Tomcat 6.0+Eclipse 3.3。在一步一步搭建好开发环境的过程中就能对Java Web的开发工具有个大致的了解,这有助于后阶段的理论知识学习以及开发实例的学习,不至于太抽象,并可以迅速上手来操作。
JDK是从事Java开发的基础开发工具与开发环境;Tomcat是作Java Web开发时常用的一款轻量级Web服务中间件软件;Eclipse是一种被Java程序员广泛使用的集成开发工具,相信这种组合能给读者的Java Web开发带来事半功倍的效果。
1.1 下载与安装JDK
由于软件项目大多是作轻量级的开发,有时还会使用一些框架开发技术。开发人员在开发与调试程序时所使用的计算机的硬件配置也不会太高,因此也不方便使用重量级的Web应用中间件,以及重量级的开发工具。因此本书将推荐并使用轻量级的Web应用中间件和开发工具软件,使用这些软件开发出的系统将具有良好的可移植性,并且这些软件将有助于开发人员快速高效地开发系统。
本书中采用的Web中间件是轻量级的Tomcat 6.0,开发工具也采用轻量级的Eclipse 3.3,Tomcat和Eclipse需要JDK 6(JavaTM SE Development Kit 6,Java开发工具包6)作为基础环境支持。
1.1.1 下载JDK
进入如下的网址:
http://java.sun.com/javase/downloads/index.jsp
这是Sun公司网站上JDK的下载页面,如图1-1所示。
图1-1 Sun公司网站上JDK的下载页面
【提示】
至本书成稿之日,JDK最新的版本是“JDK 6 Update 2”,读者可以下载更新的版本。
“JDK 6 Update 2”中包含了JRE(Java Runtime Environment,Java运行时的环境)和用于开发Java Applet与Java应用程序的命令行开发工具。
单击“JDK 6 Update 2”后的“Download”按钮进入如图1-2所示的“JDK 6 Update 2”的下载页面。
图1-2 “JDK 6 Update 2”的下载页面
选中“Accept License Agreement | Review License Agreement”前的单选钮,表示接受license,只有授受license后才能下载。
【提示】
选中“Accept License Agreement | Review License Agreement”前的单选钮后,页面会刷新一次。
点击第一个“Windows Offline Installation (build 06),Multi-language”,下载得到jdk-6u2-windows-i586-p.exe文件,这是专用于Windows平台的JDK 6安装包,如果需要其他平台(如Linux、Solaris SPARC等)的JDK 6安装包,则点击其他相应的下载链接。
1.1.2 安装JDK
双击jdk-6u2-windows-i586-p.exe文件,会弹出如图1-3所示的对话框。
图1-3 “许可证协议”对话框
点击“接受(A)>”按钮表示授受Sun公司的许可证协议,进入“自定义安装”对话框,如图1-4所示。
图1-4 “自定义安装”对话框
在“自定义安装”对话框中可以选择需要安装的组件。开发工具为“JDK 6 Update 2”,其中有专用的“JRE 6 Update 2”约需300M空间。演示程序及样例中包含一些小程序和应用程序的演示和样例。源代码是构成Java公共API的类的源代码。公共JRE是独立的,任何应用程序都可以使用,安装时还会向浏览器和系统注册Java插件和Java Web Start。Java DB是Sun支持的纯Java技术实现的一种数据库。
点击“更改(A)”按钮可以更改相应的组件的安装位置。这里选择不安装“公共JRE”和“Java DB”,并将安装目录设为“d:/jdk16”。点击“下一步(N)>”按钮,即会出现安装进度条,进入安装过程,安装完后会提示安装完毕。
【提示】
安装目录读者可根据需要更改。
JDK 6安装完毕后的目录如图1-5所示。
图1-5 JDK 6安装后的目录
JDK 6的安装根目录下包含有版权声明、许可文件、README文件等,src.zip文件是构成JDK的核心API所有类的源代码的归档文件。bin目录中有JDK 6的可执行文件,在Windows的系统变量PATH中应当有一个指示此目录的项。
设置PATH的方法是在桌面上“我的电脑”图标上单击右键,从快捷菜单中选择“属性(R)”,弹出“系统属性”对话框,选择“高级”选项卡,点击“环境变量(N)”按钮即可进入“环境变量”对话框。从“环境变量”对话框显示的系统变量来看,如果没有PATH系统变量就新建一个,如果有就编辑,在后面加入如下的设置:
;c:\jdk166\bin
“d:\jdk16”是指JDK 6的安装目录,前面加个“;”表示区分PATH的各个值。请读者根据实际安装情况修改。在PATH中有了路径后就可以直接在命令窗口中输入和使用JDK的可执行文件了。例如显示JDK的安装版本情况使用如下的命令:
java -version
显示结果如图1-6所示。
图1-6 显示JDK的版本信息
JDK 6安装目录中的db目录存放自带的数据库Derby。demo目录中含有源代码的程序示例。include目录下是一些C语言的头文件,用于支持JNI(Java Native Interface,Java本地接口)。jre目录是JDK 6运行时环境的根目录,这个目录又有2个子目录,bin子目录中存放JRE要用到的一些工具软件和可执行库文件DLL;lib子目录中存放JRE要用到的一些类库(jar包)、参数设置和资源文件,如:rt.jar、charsets.jar、content-types.properties等。
JDK 6安装目录中的lib目录是开发类库存放的目录。这些文件包括tools.jar,它包含支持JDK的工具和实用程序的非核心类;包括dt.jar,它是BeanInfo文件的DesignTime归档,BeanInfo文件用来告诉IDE(Integrated Development Enviroment,集成开发环境)如何显示Java组件以及如何让开发人员根据应用程序自定义它们。
1.2 下载、安装与配置Tomcat
Tomcat作为一款轻量级的Java Web应用中间件,备受程序员的青睐。Tomcat所占用、消耗的系统资源相对Weblogic、Websphere等重量级的商业Web中间件少得多,可以轻松顺畅地在程序员的开发机上运行起来; Tomcat是免费开源的,可以从网上下载得到,成本很低;Tomcat的版本在持续地升级,功能也在不断地完善。因此,Tomcat已成为Java Web程序员的首选开发工具。与此同时,也有大量的中小型网站或B/S(Browser/Server,浏览器、服务器)计算模式的软件系统采用Tomcat作为Web服务器软件。
Tomcat是一个实现了Java Servlet和JSP(Java Server Pages)的容器,不同版本的Tomcat容器实现了不同的Servlet/JSP规范,比较典型的情况如表1-1所示。
表1-1 典型的Tomcat容器实现的Servlet/JSP规范情况
1.2.1 下载Tomcat
至本书成稿之日,Tomcat发布的最新版本是Tomcat 6.0(此后简称为Tomcat 6)。Tomcat 6可以从Apache的官方网站免费下载得到,Apache维护了许多的开源项目,如Ant、Xalan、Tomcat等。进入如下的网址:
这是Apache官方网站中的Tomcat子网站,显示界面如图1-7所示。
图1-7 Apache网站上的Tomcat子网站
点击左边菜单“Download”中的子菜单“Tomcat 6.x”,进入Tomcat的下载页面,可以看到如图1-8所示的界面内容。
图1-8 Tomcat 6的下载界面
在“Binary Distributions”栏的core子栏下提供了3种Tomcat 6的方式:zip、tar.gz、Windows Service Installer。zip方式下载后得到的是一个zip文件,无须安装,解压缩后即可使用。tar.gz方式下载后得到的匹配是一个tar.gz文件,是在GNU操作系统(一种类似于UNIX的操作系统,其源码是可以被复制、修改和重新发布的)中用tar命令打包而成的,因此必须在与GNU相兼容的操作系统中解包,Solaris和Mac OS X操作系统中不能使用。“Windows Service Installer”方式下载后得到的是一个exe文件(如图1-8所示的版本为apache-tomcat-6.0.14.exe),Tomcat 6是在Windows操作系统下的安装程序,这种方式安装的Tomcat 6可以通过Windows的服务来控制启动、停止。
【提示】
Tomcat 6需要JDK 5或更高版本的JDK支持。推荐读者使用zip方式的Tomcat 6安装文件。
其他还是一些下载内容,Deployer是供Web开发人员开发与Tomcat 6本身相关的一些Web应用时发布Web应用的参考;“Source Code Distributions”是Tomcat 6的源代码。
1.2.2 安装Tomcat
为方便起见,本处下载zip方式的Tomcat 6,解压缩后即可使用。解压后的目录如图1-9所示。
图1-9 Tomcat安装后的目录情况
【提示】
要使用Tomcat 6还需要配置一个系统变量JAVA_HOME,其值为JDK 6的安装目录,如本处值设为“d:\jdk16”。
bin目录下是一些可执行文件,如启动、停止的批处理命令文件。在Winodws操作系统中启动Tomcat 6的命令是startup.bat,停止Tomcat 6的命令是shutdown.bat,这些实际上是一些批处理文件,里面执行了一系列的命令,有兴趣的读者可以用编辑器打开看看到底执行了一些什么命令。在UNIX下启动Tomcat 6的命令是startup.sh,停止Tomcat 6的命令是shutdown.sh。
conf目录下是一些有关Tomcat 6服务器的配置文件和参数文件,如server.xml、logging.properties等。
lib目录用于存放一些Tomcat 6中Web应用共用的类库(jar包)和资源文件。
work目录是供Web应用使用的临时工作目录。
temp是供JVM(Java Virtual Machine,Java虚拟机)使用的存放临时文件的目录。
webapps目录用于存放一些Tomcat 6自动装载的Web应用,可以是Web应用的整个目录。这个目录中已自带了一些Web应用,其中ROOT应用是默认的根Web应用。
【提示】
可以简单地把Web应用理解成Web服务器中一个独立的、完成一定的业务和功能逻辑的应用系统所处的目录,客户端访问这个目录下的文件时需要在URL(Uniform Resource Locator,统一资源定位器)地址输入目录名,例如如果服务器地址为www.csai.cn,Web服务端口号为8080,要访问“csaioa”应用中的userInfo.jsp页面,访问的URL为:
但如果userInfo.jsp页面位于ROOT应用中,则输入访问userInfo.jsp页面的URL时,不必再输入应用名ROOT,而采用如下的URL:
http://www.csai.cn:8080/userInfo.jsp
安装好Tomcat 6后,双击安装目录的bin子目录下的startup.bat,启动Tomcat 6,如图1-10所示。
图1-10 启动Tomcat 6
接下来测试Tomcat 6是否启动成功。在浏览器中输入地址“http://localhost:8080”,将出现如图1-11所示的界面,即可以看到猫的矫健身姿了,访问的其实就是ROOT应用中的index.jsp页面。
图1-11 访问Tomcat
【提示】
访问Tomcat的URL,localhost也可以改为机器名、IP地址,如果是在Internet中,还可以使用域名。localhost与127.0.0.1均表示本机。
1.2.3 配置Web服务端口号
在图1-11所示访问Tomcat 6的URL中,带了Web服务端口号8080。有些读者可能要问,为什么在访问Internet上的许多网站时都不要带端口号呢?这是因为HTTP协议访问默认的端口号为80,如果将Web服务器的端口号正好设为80,则访问时就不必再输入端口号了。
修改Tomcat 6的Web服务端口号的方法是在Tomcat 6安装目录的conf子目录中找到server.xml,打开它,找到如下的一段文字:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
将其中的port属性值改为80即可。
【提示】
在Windows NT/2000/XP/2003/Vista等Windows操作系统中,请读者注意操作系统可能自带了IIS(Internet Information Services,Internet信息服务)这一Web服务器软件,用于支持ASP或ASP.NET技术,它使用的默认端口号是80,可能会产生冲突。
1.2.4 Tomcat的Web方式管理
Tomcat 6为管理人员提供了Web方式管理的方法(虽然功能有限),可以用来监控Tomcat 6当前的运行情况,部署Web应用和WAR文件,启动和停止Web应用。进入Web管理界面的方法是点击图1-11所示的左边菜单中的“Tomcat Manager”,即会弹出如图1-12所示的对话框。
图1-12 进入Tomcat 6管理Web应用
【提示】
进入管理Web应用还有一种直接的方法就是在浏览器的地址栏输入如下的地址:
http://localhost:8080/manager/html
如果要管理的服务器是在网络中,则将localhost改为对应的服务器的IP地址或域名。
用户名和密码用什么呢?默认情况下,安装了Tomcat 6后还没有初始化用户名和密码。打开Tomcat 6安装目录中conf子目录中的tomcat-users.xml文件,内容如下:
tomcat-users.xml
<?xml version='1.0' encoding='utf-8'?> <tomcat-users> </tomcat-users>
在<tomcat-users>和</tomcat-users>之间可以增加用户,下面增加一个:
<role rolename="manager"/> <user username="tomcat" password="tomcat" roles="manager"/>
第一句表示增加一个角色,角色名为manager(管理员);第二句表示增加一个用户,此用户的角色(roles)为manager,用户名(username)为tomcat,密码(password)为tomcat。
增加了用户后,即可在图1-12中输入用户名和密码,点击“确定”按钮,进入Web管理后台,界面如图1-13所示。
图1-13 Tomcat 6的Web管理界面
在Applications表格中列出了目前Tomcat 6中所有的Web应用,表格的commands列中对于每个Web应用都有一些集中管理的命令,Start用于启动Web应用,Stop用于停止Web应用,Reload用于重新装载Web应用,Undeploy用于撤销Web应用。“Expire sessions”按钮后的文本框用于填入此Web应用的会话超时时间,默认为30分钟,设置后点击“Expire sessions”按钮即会生效。
1.2.5 发布Web应用
发布Web应用是Web程序开发过程中经常要用到的功能。输入如下的地址:
http://localhost:8080/manager/html
进入与图1-13相同的界面,拉动竖向的滚动条可看到如图1-14所示的界面。
“Context Path (optional)”是发布Web应用后的上下文路径;“XML Configuration file URL”是Web应用的配置文件web.xml文件所在的全路径,一般位于Web应用的WEB-INF目录中;“WAR or Directory URL”是Web应用所处的根目录或打包后的WAR文件。假设现有一个已开发好的Web应用,位于硬盘的“D:\eclipse\workspace\webchart\WebRoot”目录,XML配置文件位于“D:\eclipse\workspace\webchart\WebRoot\WEB-INF\web.xml”,发布后应用的名字为“webchart”,则设置的参数如图1-14所示,点击“Deploy”按钮即可发布。
图1-14 发布Web应用的界面
发布完后即可通过如下的地址访问webchart应用:
http://localhost:8080/webchart
【提示】
可以结合一些自动化的发布Web应用工具来执行一连串的指令,如Ant。本书中不必用到Ant,因为编译程序的工作由Eclipse自动完成了,只要将Web应用指向Eclipse工作区的对应目录中,则不必做文件拷贝了,发布动作则使用Tomcat 6的Web管理方式或命令方式进行即可。如果是多人的团队式开发,还是提倡使用Ant这样的发布工具。
还可以通过直接配置Tomcat 6安装目录下的“conf/server.xml”文件来发布Web应用。用编辑器打开server.xml,在“</Host>”前加入如下内容:
<Context path="/webchart" docBase="D:/eclipse/workspace/webchart/WebRoot" debug="0"> </Context>
同样可以发布webchart应用。其中“path="/webchart"”表示配置虚拟目录的名称,“docBase="D:/eclipse/workspace/webchart/WebRoot"”是虚拟目录指向的事实目录。还有一种方法是在Tomcat 6安装目录的“conf/Catalina/localhost”子目录下新建一个与Web应用同名的xml文件,内容如下:
webchart.xml
<Context path="/webchart" docBase="D:/eclipse/workspace/webchart/WebRoot" debug="0"> </Context>
【提示】
如果没有“conf/Catalina/localhost”子目录,就自行建一个。
再重启Tomcat 6,这样也能发布webchart应用。为什么要把webchart.xml文件放在Tomcat 6安装目录的“conf/Catalina/localhost”子目录下呢?打开server.xml可以找到这样一段文字:
<Engine name="Catalina" defaultHost="localhost">
这表示Tomcat 6默认情况下把Web引擎的名称取为Catalina,主机默认设为localhost。
1.3 下载与使用EcIipse
Eclipse是一款免费、开源的集成开发工具,特别适合用于Java程序的开发。本书的所有实例都将基于Eclipse来开发、实现。编写Java程序,Eclipse不是必需的,读者也可以使用任意文本编辑工具,但使用Eclipse这样的集成开发工具将大大提高开发的效率。
【提示】
安装Eclipse前需要先安装好JDK。
1.3.1 下载Eclipse
通过如下的网址“http://www.eclipse.org”进入Eclipse的官方网站,如图1-15所示。
图1-15 Eclipse的官方网站
点 击“Download Eclipse”按 钮 进 入 下 载 主 页 面。其 实 也 可 以 直 接 输 入“http://www.eclipse.org/downloads”进入Eclipse的下载主页面,如图1-16所示。
图1-16 Eclipse下载的主页面
Eclipse开发工具有很多种。“Eclipse IDE for Java Developers”专用于Java应用程序的开发,带有Java IDE、CVS客户端、XML编辑器等工具,但对Java Web应用系统的开发支持不够,需要另外加装插件。“Eclipse IDE for Java EE Developers”适合进行Java企业级应用系统的开发,特别是Java Web应用系统的开发,但此工具软件需要JDK 1.5或更高版本的JDK作为支持。
为方便开发Web程序,这里下载“Eclipse IDE for Java EE Developers”,在图1-16所示的界面中,点击“Eclipse IDE for Java EE Developers”即可下载得到。下载后得到的是一个压缩包eclipse-jee-europa-win32.zip。解压缩eclipse-jee-europa-win32.zip后,即可使用Eclipse了。在解压缩后的目录中有一个文件eclipse.exe,双击它,即会弹出如图1-17所示的对话框。
图1-17 运行Eclipse时弹出的对话框
这个对话框是询问开发人员要将哪个目录作为Eclipse的工作区目录。如果固定使用一个工作区,设定好后,选中“Use this as the default and do not ask again”前的复选框,下次启动Eclipse将不再弹出这个窗口,而使用设定的工作区为默认的工作区。点击“OK”按钮完成设置,进入Eclipse。
1.3.2 新建一个Web工程
进入Eclipse后界面如图1-18所示。
图1-18 Eclipse的主界面
新建一个Web应用的方法有2种,一种是通过File菜单,选择菜单“File”→“New”→“Project…”,弹出“New Project”对话框;一种是通过快捷菜单,在左边的“Project Explorer”中的空白处,单击右键,在弹出的快捷菜单中选择菜单“New”→“Project…”也可以弹出“New Project”对话框。“New Project”对话框如图1-19所示。
图1-19 “New Project”对话框
选择“Web”→“Dynamic Web Project”,即建立动态Web工程,本书中要建立的都是此种,如果只是HTML页面,则可以考虑选择“Static Web Project”。点击“Next>”按钮,进入“New Dynamic Web Project”对话框,如图1-20所示。
图1-20 “New Dynamic Web Project”对话框
在“Project Name”后输入工程的名称。默认情况下新建的工程的所有文件都会存放在工作区内,如果想存放到别的目录,不选中“Use default”前的复选框即可通过下面的路径浏览“Browse…”按钮来设置存放工程文件的目录。“Target Runtime”下拉框设置Web容器的类型,如果下拉框中没有,单击后面的“New…”按钮,打开“New Server Runtime”对话框。在“New Server Runtime”对话框中选中“Apache”→“Apache Tomcat v 6.0”,完成运行时的目标服务器设置。
【提示】
“Eclipse IDE for Java EE Developers”能够在开发时将程序置于指定的Web服务中间件软件中进行程序调试,如果在图1-20中所示的“Target Runtime”下拉框中没有您想要的目标Web服务中间件软件,则需要新建一个,新建的方法读者可以参见1.3.4节的内容。
点击“Next>”按钮,进入下一个对话框,再点击“Next>”按钮,进入Web模型配置对话框,如图1-21所示。
图1-21 Web模型配置对话框
“Context”设置工程根目录的名称;“Content Directory”设置或此工程中Web应用目录的名称;“Java Source Directory”设置Java源码的放置路径。设置完后,按“Finish”按钮完成新建工程myWebApp的初始过程。创建完的“myWebApp”工程在Eclipse的“Project Explorer”中的树形图如图1-22所示。
图1-22 myWebApp工程的树形结构图
新建的Java类或接口的源码将放在src目录中,编译后的字节码放在“build/classes”目录中,WebContent目录是Web应用的根目录。
1.3.3 调试Web应用
在“Project Explorer”中选中Web工程,在常用按钮栏中点选“”后向下的小黑箭头,弹出菜单如图1-23所示。
图1-23 “Run As”菜单
选择“Run As”→“Run on Server”,弹出“Run on Server”对话框。在“Run on Server”对话框中选中“Tomcat v 6.0 Server at localhost”,点击“Next>”按钮,在接下来的对话框中选择要调试的Web应用,点击“Finish”按钮,即会在Eclipse环境中调试运行程序,如图1-24所示。
图1-12 调试Web应用中的程序
在下部有一个“Servers”选项卡,可以直接控制Tomcat 6的启动、停止,并在“Console”选项卡中报告Tomcat 6的控制台输出。
1.3.4 安装服务器运行时的环境
在“Eclipse IDE for Java EE Developers”中安装服务器运行时环境的目的是为了方便开发人员在Eclipse中直接调试Web应用中的程序。
选择“Window”→“Preferences…”,弹出“Preferences”对话框。在“Preferences”对话框左边的树形菜单中选中“Server”→“Installed Runtimes”,如图1-25所示。
图1-25 “Preferences”对话框
单击右边的“Add…”按钮,弹出“New Server Runtime”对话框,选择您想要的Web服务中间件软件。Eclipse中提供了Apache的Tomcat的各种版本、IBM WebSphere v6.0、JBOSS的各种版本、Oracle OC4j Standalone等Web服务中间件软件的支持。
【提示】
请注意选中“New Server Runtime”对话过程的第一步“New Server Runtime”对话框中,请选中对话框下边的“Also create new local server”复选框,以方便在Eclipse中进行相关的配置文件设置,并方便调试程序。
如果选择了Tomcat v 6.0则进入如图1-26所示的对话框,需要设置名称(读者可任取)、Tomcat 6的安装路径,以及JRE的安装路径。设置完后,单击“Finish”按钮,完成设置。设置完后,会在Eclipse的“Project Explorer”中的Servers项下出现前面所配置的Web服务中间件软件,如图1-27所示。
图1-26 配置Web服务中间件软件
图1-27 Eclipse的“Project Explorer”中的Servers项
可以看到,在配置的Web服务中间件软件下有了常用的配置文件,以供开发人员配置运行时的环境。
1.4 小结
本章介绍了全书程序的开发和运行环境的安装与配置,采用JDK 1.6+Tomcat 6.0+Eclipse 3.3组合,这三种工具是本书成稿之日的最新版本,读者可按照步骤一步一步下载安装使用,这些软件都是免费开源的。
Tomcat和Eclipse都需要JDK来作为基础支持环境,Tomcat 6的Web容器实现了Servlet2.5/JSP 2.1规范,“Eclipse IDE for Java EE Developers”适合用于Java企业级应用系统的开发,特别是Java Web应用系统的开发。