动手体验:编写与编译Servlet程序的过程

1)编写一个继承了HttpServlet类的HelloServlet类,它对HttpServlet类中的service方法进行了覆盖,如例程4-2所示。

例程4-2 HelloServlet.java


import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;


public class HelloServlet extends HttpServlet

{

//从HttpServlet类的帮助文档中复制service方法的声明部分可避免书写错误

public void service(HttpServletRequest request,

HttpServletResponse response) throws ServletException,IOException

{

PrintWriter out = response.getWriter();

out.println("<html>");

out.println("<font size=30 color=red>www.it315.org</font><br>");

out.println("<marquee>" + new java.util.Date() + "</marquee>");

out.println("</html>");

}

}


(2)使用javac命令编译这个源文件,通常情况下,第一次学习编写Servlet程序的人都会遇到类似如下错误:

HelloWorld.java:2: package javax.servlet does not exist

import javax.servlet.*;

^

HelloWorld.java:3: package javax.servlet.http does not exist

import javax.servlet.http.*;

^

......

这些错误信息提示javac编译器找不到javax.servlet和javax.servlet.http这两个包以及其中的一些Servlet API类,这是因为包含Servlet API类的jar文件还没有被加入到javac所使用的CLASSPATH环境变量中。

(3)在执行javac的命令行窗口中,将包含有Servlet API的jar文件加入到CLASSPATH环境变量的路径列表中,例如,对于Tomcat 4.x,应使用如下的命令设置:

set CLASSPATH=<tomcat的安装目录>\common\lib\servlet.jar;%CLASSPATH%

设置完CLASSPATH环境变量后,重新编译HelloServlet.java文件,如果源程序中没有书写错误的话,这时候就可以编译成功了。

在笔者编写的《java就业培训教程》中曾经讲过,在命令行窗口中设置的CLASSPATH环境变量是临时的,只对这个命令行窗口起作用,对其它窗口和应用程序不起作用,因此在每次新启动的命令行窗口中都要重新设置。如果想让设置一直保持有效,应该使用对整个系统都有效的环境变量的设置方法,例如,在win2000的系统特性的“环境变量”对话框中进行设置,在win98的开机自动批处理文件Autoexec.bat中设置,在Linux的Profile文件中设置。

(4)在编译和运行java程序时,Java类装载器也会去<JDK安装主目录>\jre\lib\ext目录下的jar包中搜索要加载的类。如果将包含Serlet API的jar文件复制到该目录下,在编译Servlet程序时,就不必在CLASSPATH环境变量中增加包含Serlet API的jar文件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值