经常看到jsp的初学者问tomcat下如何配置jsp、servlet和bean的问题,于是总结了一下如何tomcat下配置jsp、servlet和ben,希望对那些初学者有所帮助。
@U%I 6 t .Mw'P\GtM 一、开发环境配置
JI}(R4uV 3Bz0B a 第一步:下载j2sdk和tomcat:到sun官方站(
http://java.sun.com/j2se/1.5.0/download.jsp)下载j2sdk,注意下载版本为Windows Offline Installation的SDK,同时最好下载J2SE 1.5.0 Documentation,然后到tomcat官方站点(
http://jakarta.apache.org/site/downloads/downloads_tomcat-5.cgi)下载tomcat(下载最新5.5.9版本的tomcat);
]+W+8)f1M PY.c$)az> 第二步:安装和配置你的j2sdk和tomcat:执行j2sdk和tomcat的安装程序,然后按默认设置进行安装即可。
A}sb2P {b>tX)Tep 1.安装j2sdk以后,需要配置一下环境变量,在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量(假定你的j2sdk安装在c:\j2sdk1.5.0):
2i4FIS|z0 m u(HNj JAVA_HOME=c:\j2sdk1.5.0
\CL |=8[2 classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(.;一定不能少,因为它代表当前路径)
#:Di1I9<O7 path=%JAVA_HOME%\bin
|8h<Ls_ hFP$MFab 接着可以写一个简单的java程序来测试J2SDK是否已安装成功:
Uq&ne1 4em7PmT public class Test{
/J8AnA1 public static void main(String args[]){
LKG],1n- System.out.println("This is a test program.");
s@f4f__(] }
0,(U_+n }
7Rj!vj/
= Ow}MX 将上面的这段程序保存为文件名为Test.java的文件。
8<k0j&~J _Q/D%7[pa 然后打开命令提示符窗口,cd到你的Test.java所在目录,然后键入下面的命令
rSB"0W7 ,-t3gc1~X javac Test.java
cn=~}T@~Z java Test
AL}c-#GG %WCA?W0:4 此时如果看到打印出来This is a test program.的话说明安装成功了,如果没有打印出这句话,你需要仔细检查一下你的配置情况。
y yrCO"eh :N%cIxrqP 2.安装Tomcat后,在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量(假定你的tomcat安装在c:\tomcat):
7(eWBJfTo 6!/e_a CATALINA_HOME=c:\tomcat
?};}#%971 CATALINA_BASE=c:\tomcat
?{$Q'c_I @h([c 然后修改环境变量中的classpath,把tomat安装目录下的common\lib下的(可以根据实际追加)servlet.jar追加到classpath中去,修改后的classpath如下:
()K%Rn #18H
Z4N classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\common\lib\servlet.jar;
(zBa2Vmmv ;or(:Yoc- 接着可以启动tomcat,在IE中访问
http://localhost:8080,如果看到tomcat的欢迎页面的话说明安装成功了。
42:\1B#[ 09 eS&J<R 第三步:建立自己的jsp app目录
18Vtk"j ?.IT!M}DR 1.到Tomcat的安装目录的webapps目录,可以看到ROOT,examples, tomcat-docs之类Tomcat自带的的目录;
vAq`*]W+ 2.在webapps目录下新建一个目录,起名叫myapp;
T^aEx.`O}` 3.myapp下新建一个目录WEB-INF,注意,目录名称是区分大小写的;
w]UYD;f 4.WEB-INF下新建一个文件web.xml,内容如下:
jio1#& J+[&:]=P <?xml version="1.0" encoding="ISO-8859-1"?>
DL|,:2` <!DOCTYPE web-app
z*l3O~mZ PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
]o_Z3xXUa "
http://java.sun.com/dtd/web-app_2_3.dtd">
mmAikT#k <web-app>
#wNksh/J^ <display-name>My Web Application</display-name>
yVUA7IY <description>
a
=*(>= A application for test.
2K!3+D" </description>
{~k/xM.- </web-app>
-wC;pA#o ln'7kg 5.在myapp下新建一个测试的jsp页面,文件名为index.jsp,文件内容如下:
0lF[N.!\9 <html><body><center>
CwTx7
^qa Now time is: <%=new java.util.Date()%>
.Hl]xI$;+ </center></body></html>
26yv w R?(0:f 6.重启Tomcat
iRS )Z) k)b}"' I 7.打开浏览器,输入
http://localhost:8080/myapp/index.jsp 看到当前时间的话说明就成功了。
syA*!Up Cv>|>Ob# 第四步:建立自己的Servlet:
d47b&.v8e CK 3]]{ 1.用你最熟悉的编辑器(建议使用有语法检查的java ide)新建一个servlet程序,文件名为Test.java,文件内容如下:
E08FUAth]# x
%L2eXL package test;
,_r"=>?@ import java.io.IOException;
(8qMF{ import java.io.PrintWriter;
7UejK r import javax.servlet.ServletException;
4cRF3$amd import javax.servlet.http.HttpServlet;
VljAAt import javax.servlet.http.HttpServletRequest;
7u6o~( import javax.servlet.http.HttpServletResponse;
U>IllNd
public class Test extends HttpServlet {
EQSOEf[ protected void doGet(HttpServletRequest request, HttpServletResponse response)
=GL}\I throws ServletException, IOException {
l{>fma]7 PrintWriter out=response.getWriter();
o=_:g >5 out.println("<html><body><h1>This is a servlet test.</h1></body></html>");
@ JZ I out.flush();
}7RR",w }
@vss:'l }
sNc(aGvy Ds9pXgU(Z 2 .编译
am{f<v,EI 将Test.java放在c:\test下,使用如下命令编译:
&W-L`aFd0 {^i7 3}@O C:\Test>javac Test.java
^ ~:f02[D (8TB*BhQ_ 然后在c:\Test下会产生一个编译后的servlet文件:Test.class
S(.AE@U :.'<ndM 3 .将结构test\Test.class剪切到%CATALINA_HOME%\webapps\myapp\WEB-INF\classes下,也就是剪切那个test目录到classes目录下,如果classes目录不存在,就新建一个。 现在webapps\myapp\WEB-INF\classes下有test\Test.class的文件目录结构
(wEaa'XL MIo<sJuv 4 .修改webapps\myapp\WEB-INF\web.xml,添加servlet和servlet-mapping
P,k~! F^L K]Q#B|_T 编辑后的web.xml如下所示,红色为添加的内容:
SG_^Rd9
D <gF=$u|}3[ <?xml version="1.0" encoding="ISO-8859-1"?>
= I,O+^ <!DOCTYPE web-app
iZ<^p1i PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
%obR2% "
http://java.sun.com/dtd/web-app_2_3.dtd">
=dx!R ,Bw <web-app>
(MY#;v\AYE <display-name>My Web Application</display-name>
K#rfQ0QK/! <description>
/vll*}} A application for test.
au@ LQxKQ </description>
|iKk'Rta4 <servlet>
L^i=RGx <servlet-name>Test</servlet-name>
Oi AZA< <display-name>Test</display-name>
X,n4_=f <description>A test Servlet</description>
a
yn6k=F <servlet-class>test.Test</servlet-class>
."&,_F </servlet>
^E\{&ka