经常看到jsp的初学者问tomcat下如何配置jsp、servlet和bean的问题,于是总结了一下如何tomcat下配置jsp、servlet和ben,希望对那些初学者有所帮助。
8:A<PV!+ wR4P0[ 一、开发环境配置
4]+ ^K` 6F(yH4 第一步:下载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);
{jc~s~<# We4 FR4` 第二步:安装和配置你的j2sdk和tomcat:执行j2sdk和tomcat的安装程序,然后按默认设置进行安装即可。
vc!S{4bN Wh<lmC50( 1.安装j2sdk以后,需要配置一下环境变量,在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量(假定你的j2sdk安装在c:\j2sdk1.5.0):
+(/Z=4;,[ 1a)_Lko JAVA_HOME=c:\j2sdk1.5.0
34?yQX{ classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(.;一定不能少,因为它代表当前路径)
~/#?OLj(T path=%JAVA_HOME%\bin
ke4q$pD L;f=\q"g 接着可以写一个简单的java程序来测试J2SDK是否已安装成功:
(dT!u8O e K9P"ncMt public class Test{
KC]Jbm{y public static void main(String args[]){
-s)2b
; System.out.println("This is a test program.");
Zk/NO^1b }
&6:,2W&s }
H\b5]q% }3*h`(Bv7 将上面的这段程序保存为文件名为Test.java的文件。
u+R?N%
EKP s<dD>SU 然后打开命令提示符窗口,cd到你的Test.java所在目录,然后键入下面的命令
iwVra"y Xo*$|9[. javac Test.java
)N6R# java Test
mvL'l) B>]5/!_4 此时如果看到打印出来This is a test program.的话说明安装成功了,如果没有打印出这句话,你需要仔细检查一下你的配置情况。
z84W{!
P i&30n# 2.安装Tomcat后,在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量(假定你的tomcat安装在c:\tomcat):
A,og9<+j- 'wZy: c CATALINA_HOME=c:\tomcat
-'N#@Wdr CATALINA_BASE=c:\tomcat
C[KU~@ E*I]v 然后修改环境变量中的classpath,把tomat安装目录下的common\lib下的(可以根据实际追加)servlet.jar追加到classpath中去,修改后的classpath如下:
dSL %% S]o classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\common\lib\servlet.jar;
?dmMGm0T9 \}Wkj~IX 接着可以启动tomcat,在IE中访问
http://localhost:8080,如果看到tomcat的欢迎页面的话说明安装成功了。
'|/_=' EUn"x'
第三步:建立自己的jsp app目录
ChW0vIL` ?rOb?cu- 1.到Tomcat的安装目录的webapps目录,可以看到ROOT,examples, tomcat-docs之类Tomcat自带的的目录;
~pA;j7* 2.在webapps目录下新建一个目录,起名叫myapp;
FKx9$B 3.myapp下新建一个目录WEB-INF,注意,目录名称是区分大小写的;
p%ZiTrA1&D 4.WEB-INF下新建一个文件web.xml,内容如下:
#,PAM.rH "@?|Vv,vn <?xml version="1.0" encoding="ISO-8859-1"?>
a"DV`jn <!DOCTYPE web-app
Q)@1:(V/ PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
O1ha'@qID "
http://java.sun.com/dtd/web-app_2_3.dtd">
Y1'.m5E <web-app>
I>3]4mI*a <display-name>My Web Application</display-name>
4GfLS.Ip <description>
/SKr.S61e A application for test.
W@C56fCa </description>
q5!l(QL. </web-app>
n>0dz# Fa!)$eb7 5.在myapp下新建一个测试的jsp页面,文件名为index.jsp,文件内容如下:
MELGTP> <html><body><center>
=qtoDe Now time is: <%=new java.util.Date()%>
iy#OmI>j </center></body></html>
YJ^ lM\/< h]MVFn{ 6.重启Tomcat
-5cH$]1\ cMWO_$ 7.打开浏览器,输入
http://localhost:8080/myapp/index.jsp 看到当前时间的话说明就成功了。
qQcC[50 9v
F2aLPk 第四步:建立自己的Servlet:
j>Z]J'P PM.SEzhm 1.用你最熟悉的编辑器(建议使用有语法检查的java ide)新建一个servlet程序,文件名为Test.java,文件内容如下:
p<zXuocQ cGc|n3( package test;
LJ/qF0L!H import java.io.IOException;
_tReZ(Vw import java.io.PrintWriter;
]18ygqt import javax.servlet.ServletException;
pu:D/2R2;k import javax.servlet.http.HttpServlet;
i@CMPz-h& import javax.servlet.http.HttpServletRequest;
;
BZM~'
import javax.servlet.http.HttpServletResponse;
$i@EfujY public class Test extends HttpServlet {
D,n}Qf!GYk protected void doGet(HttpServletRequest request, HttpServletResponse response)
XeSbA throws ServletException, IOException {
#VV.[N PrintWriter out=response.getWriter();
Doh|G:P]# out.println("<html><body><h1>This is a servlet test.</h1></body></html>");
e8 7-
B1` out.flush();
05KoxFO? }
T"H)g }
JZ%F $vLV<
y07 2 .编译
,/:a77 将Test.java放在c:\test下,使用如下命令编译:
bQy%$7UmX, P082.:q" C:\Test>javac Test.java
2E2}|:
||& rH9}nL 然后在c:\Test下会产生一个编译后的servlet文件:Test.class
<s>/< kW: [/Z'OV"tU 3 .将结构test\Test.class剪切到%CATALINA_HOME%\webapps\myapp\WEB-INF\classes下,也就是剪切那个test目录到classes目录下,如果classes目录不存在,就新建一个。 现在webapps\myapp\WEB-INF\classes下有test\Test.class的文件目录结构
`,Nn4 LZ)m](+M 4 .修改webapps\myapp\WEB-INF\web.xml,添加servlet和servlet-mapping
oe|e+ iHn!KV 编辑后的web.xml如下所示,红色为添加的内容:
i"]8Zw_D f4I#a&DO <?xml version="1.0" encoding="ISO-8859-1"?>
mrC+J* <!DOCTYPE web-app
@6co\.bv PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
]kkBgjQbS "
http://java.sun.com/dtd/web-app_2_3.dtd">
8KtgSash <web-app>
z>33O5U <display-name>My Web Application</display-name>
+w.Kv
; <description>
6eT'[Umx A application for test.
06^1#M$' </description>
j 3MciQ` <servlet>
nbASpa( <servlet-name>Test</servlet-name>
Dum`o^l# <display-name>Test</display-name>
bfJ`}xl(8 <description>A test Servlet</description>
8q [c <servlet-class>test.Test</servlet-class>
egvy#2b@ </servlet>
&@HNz6KO <servlet-mapping>
ix9HSa{d <servlet-name>Test</servlet-name>
<i'u96 <url-pattern>/Test</url-pattern>
N+M&d3H` </servlet-mapping>
n<:d%&^n </web-app>
;(Xe@OtW "'!%}; 这段话中的servlet这一段声明了你要调用的Servlet,而servlet-mapping则是将声明的servlet"映射"到地址/Test上
>I&
jurU# e$EF% cKH 5 .好了,重启动Tomcat,启动浏览器,输入
http://localhost:8080/myapp/Test 如果看到输出This is a servlet test.就说明编写的servlet成功了。
@y(Wy} Nr24[e
G>d 注意:修改了web.xml以及新加了class,都要重启Tomcat
sk
?'^6Xh {?/8jCVd 第四步:建立自己的Bean:
`GQiB]Z ,![Du::1 1.用你最熟悉的编辑器(建议使用有语法检查的java ide)新建一个java程序,文件名为TestBean.java,文件内容如下:
Ok>(>K<r P$3=i`X!nw package test;
],F}}pv public class TestBean{
w2d]96*kQe private String name = null;
XU_,Z/Yw_ public TestBean(String strName_p){
}11`98>B6: this.name=strName_p;
%i&/$0.8 }
^+as\ public void setName(String strName_p){
eky(;%Sz this.name=strName_p;
r)p2'+}pV }
'^Utbp2< public String getName(){
R6Zj=l[ return this.name;
h
??C4z }
A!{.|x[S44 }
&'(a$S>v Q+d.%qhc 2 .编译
?7uKP}1| Aw4?y[{H 将TestBean.java放在c:\test下,使用如下命令编译:
1/2V.:bg ,|.8nk" C:\Test>javac TestBean.java
H=&/ Q WBr:|F+~s 然后在c:\Test下会产生一个编译后的bean文件:TestBean.class
hDljY!P>p 9$+^"ilk 3 .将TestBean.class文件剪切到 %CATALINA_HOME%\webapps\myapp\WEB-INF\classes\test下,
fJWxJSdi rg5]`-!= 4 .新建一个TestBean.jsp文件,文件内容为:
)Ig+uDGk :4ja@~ <%@ page import="test.TestBean" %>
[v0ri<