经常看到jsp的初学者问tomcat下如何配置jsp、servlet和bean的问题,于是总结了一下如何tomcat下配置jsp、servlet和ben,希望对那些初学者有所帮助。
&)izh) FA `b KJ 一、开发环境配置
m(w 9s;< +Kp8X53 第一步:下载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);
69S*\'L 0[f[6mm%m 第二步:安装和配置你的j2sdk和tomcat:执行j2sdk和tomcat的安装程序,然后按默认设置进行安装即可。
:?j]W2+kR Jb6)U] 1.安装j2sdk以后,需要配置一下环境变量,在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量(假定你的j2sdk安装在c:\j2sdk1.5.0):
wv 1 T}jK^" JAVA_HOME=c:\j2sdk1.5.0
NpH9},1i classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(.;一定不能少,因为它代表当前路径)
2 b80b50 path=%JAVA_HOME%\bin
%)w7t[A2D AAF']z<4_" 接着可以写一个简单的java程序来测试J2SDK是否已安装成功:
B:VGa<lx5 =wMq!mBd public class Test{
Z# %s/TL public static void main(String args[]){
+`7!4gxwK! System.out.println("This is a test program.");
E>N [ }
>mj WC) U }
aMJJ|iiU vDIsawbHD 将上面的这段程序保存为文件名为Test.java的文件。
QIfP%,LT 88VI
_< 然后打开命令提示符窗口,cd到你的Test.java所在目录,然后键入下面的命令
/*(&Dmt> D67z6jep( javac Test.java
Md&K#)9,( java Test
Dxe]LES\] |$Cfm} 此时如果看到打印出来This is a test program.的话说明安装成功了,如果没有打印出这句话,你需要仔细检查一下你的配置情况。
\olY)b[ Z>[n~{-,p 2.安装Tomcat后,在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量(假定你的tomcat安装在c:\tomcat):
0|kH0c,T- 8p#V4liE CATALINA_HOME=c:\tomcat
E., CATALINA_BASE=c:\tomcat
BP@V:z 0jt@|3 然后修改环境变量中的classpath,把tomat安装目录下的common\lib下的(可以根据实际追加)servlet.jar追加到classpath中去,修改后的classpath如下:
dKY#Tl] ?e\u_3-9 classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\common\lib\servlet.jar;
PPde!}T$ p]qz+Z/ 接着可以启动tomcat,在IE中访问
http://localhost:8080,如果看到tomcat的欢迎页面的话说明安装成功了。
!ScEA= p}e| E! 第三步:建立自己的jsp app目录
1'H!S%fS X/Ii}X/p 1.到Tomcat的安装目录的webapps目录,可以看到ROOT,examples, tomcat-docs之类Tomcat自带的的目录;
qIxe)+. 2.在webapps目录下新建一个目录,起名叫myapp;
.O SQ8W} 3.myapp下新建一个目录WEB-INF,注意,目录名称是区分大小写的;
o$ #q/L 4.WEB-INF下新建一个文件web.xml,内容如下:
t$b5,"G1 <Y"HCa{ <?xml version="1.0" encoding="ISO-8859-1"?>
U,8mYv2| <!DOCTYPE web-app
BKV:U\QZ PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
!AGoI7W} "
http://java.sun.com/dtd/web-app_2_3.dtd">
Q$Rp?o& <web-app>
:o:Z <display-name>My Web Application</display-name>
p*l=rni4 <description>
S{Zf}8?6$ A application for test.
iI3,q-LA </description>
Z`#XB2, </web-app>
<B'PB"R3y +UiJWO 5.在myapp下新建一个测试的jsp页面,文件名为index.jsp,文件内容如下:
8\G"I <html><body><center>
U,lO{J[T Now time is: <%=new java.util.Date()%>
+1r><do; </center></body></html>
TAq[g|N-; g>g*1oS 6.重启Tomcat
)2
b-3lz 2Z ?l,M~ 7.打开浏览器,输入
http://localhost:8080/myapp/index.jsp 看到当前时间的话说明就成功了。
$&Z<4:Flc j8%Y[:~D 第四步:建立自己的Servlet:
nUK;M[ ?@<Tzk]a. 1.用你最熟悉的编辑器(建议使用有语法检查的java ide)新建一个servlet程序,文件名为Test.java,文件内容如下:
*J{E1])<a &x$ps package test;
ZH`(n5 import java.io.IOException;
^O}J',Fm%f import java.io.PrintWriter;
qC3PKlhv6 import javax.servlet.ServletException;
1k`gr&S import javax.servlet.http.HttpServlet;
Tfx-h)oP3 import javax.servlet.http.HttpServletRequest;
53?Ati\Y) import javax.servlet.http.HttpServletResponse;
z/nW;ow public class Test extends HttpServlet {
gGx<k3W^ protected void doGet(HttpServletRequest request, HttpServletResponse response)
`XM0Mm% throws ServletException, IOException {
cYBjsN(!A| PrintWriter out=response.getWriter();
:(4q\~ out.println("<html><body><h1>This is a servlet test.</h1></body></html>");
!r9rTS] out.flush();
S4rm K& }
DQ&\k'"\ }
0Hx'C^m72 _:FD#5BZ1 2 .编译
)P,pW?h$ 将Test.java放在c:\test下,使用如下命令编译:
qTN30(x2 E= .clA C:\Test>javac Test.java
a5&[O A-*MH#QUKh 然后在c:\Test下会产生一个编译后的servlet文件:Test.class
)-h{0o e7tio! 3 .将结构test\Test.class剪切到%CATALINA_HOME%\webapps\myapp\WEB-INF\classes下,也就是剪切那个test目录到classes目录下,如果classes目录不存在,就新建一个。 现在webapps\myapp\WEB-INF\classes下有test\Test.class的文件目录结构
N4b{^JkF DR]4Tc z# 4 .修改webapps\myapp\WEB-INF\web.xml,添加servlet和servlet-mapping
E(&zH;?_ Asy2jw\V 编辑后的web.xml如下所示,红色为添加的内容:
~qXwQ@ ],vid1E <?xml version="1.0" encoding="ISO-8859-1"?>
2`> (LH <!DOCTYPE web-app
w ~^{V4V PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
orbz`IQc "
http://java.sun.com/dtd/web-app_2_3.dtd">
JSx[V<7m <web-app>
7PwH&rI <display-name>My Web Application</display-name>
Ocz21gl-?` <description>
*_]fe&s=% A application for test.
$.31<@T7 </description>
'v=BAY=Ef <servlet>
r%>EiHpCU <servlet-name>Test</servlet-name>
vu&ny&=` <display-name>Test</display-name>
[^XD@ <description>A test Servlet</description>
c`N_MP <servlet-class>test.Test</servlet-class>
G_5w5dbG </servlet>
T!Lv%i*|Y <servlet-mapping>
[&l+V e( <servlet-name>Test</servlet-name>
"ZA`Lp;%w <url-pattern>/Test</url-pattern>
_ q
AT%. </servlet-mapping>
~f( #S*Ic </web-app>
s>[Oe|` =h|7bYLy 这段话中的servlet这一段声明了你要调用的Servlet,而servlet-mapping则是将声明的servlet"映射"到地址/Test上
g|h;* Z_7TD) 5 .好了,重启动Tomcat,启动浏览器,输入
http://localhost:8080/myapp/Test 如果看到输出This is a servlet test.就说明编写的servlet成功了。
Fq`@sM$ 1lJ^$U 注意:修改了web.xml以及新加了class,都要重启Tomcat
k(v &+v Do5{t'm3 第四步:建立自己的Bean:
i[w&