法律平台网站建设方案,群晖服务器可做网站服务器么,电子商务网站成功的关键是,dw网页制作成品下载1#xff0e;Servlet技术简介Servlet技术是Sun公司提供的一种实现动态网页的解决方案#xff0c;它是基于Java编程语言的WEB服务器端编程技术#xff0c;主要用于在WEB服务器端获得客户端的访问请求信息和动态生成对客户端的响应消息。Servlet技术也是JSP技术#xff08;另… 1Servlet技术简介 Servlet技术是Sun公司提供的一种实现动态网页的解决方案它是基于Java编程语言的WEB服务器端编程技术主要用于在WEB服务器端获得客户端的访问请求信息和动态生成对客户端的响应消息。Servlet技术也是JSP技术另外一种动态网页开发技术的基础。一个Servlet程序就是一个实现了特殊接口的 Java类用于被支持Servlet的WEB服务器调用和运行即只能运行于具有Servlet引擎的WEB服务器端。一个Servlet程序负责处理它所对应的一个或一组URL地址的访问请求接收访问请求信息和产生响应内容。 Applet是用于浏览器端的Java小程序在浏览器端被解释执行用于在HTML网页中实现一些桌面应用程序的功能被称为“小应用程序”。Servlet是用于WEB服务器端的Java小程序它在WEB服务器端被解释执行用于处理客户端的请求和产生动态网页内容。源于Applet的命名这种WEB服务器端的Java小程序就被命名为了Servlet与Applet相对应Servlet可以被称之为“小服务程序”。 Servlet与普通java程序相比只是输入信息的来源和输出结果的目标不一样所以普通Java程序所能完成的大多数任务Servlet程序都可以完成。Servlet程序具有如下的一些基本功能 获取客户端通过HTML的FORM表单递交的数据和URL后面的参数信息 创建对客户端的响应消息内容 访问服务器端的文件系统 连接数据库并开发基于数据库的应用 调用其它的Java类。 2编写与编译Servlet程序 一个Servlet程序就是一个在WEB服务器端运行的特殊Java类这个特殊的Java类必须实现javax.servlet.Servlet接口Servlet接口定义了Servlet容器与Servlet程序之间通信的协议约定。为了简化Servlet程序的编写Servlet API中也提供了一个实现了Servlet接口的最简单的Servlet类其完整名称为javax.servlet.GenericServlet这个类实现了Servlet程序的基本特征和功能。Servlet API中还提供了一个专用于HTTP协议的Servlet类其名称是javax.servlet.http.HttpServlet它是GenericServlet的子类在GenericServlet类的基础上进行了一些针对HTTP特点的扩充。显然一个Java类只要继承了GenericServlet或HttpServlet它就是一个Servlet。反过来说要编写一个Servet类这个类必须继承GenericServlet类或HttpServlet类。为了充分利用HTTP协议的功能在一般情况下都应让自己编写的Servlet类继承HttpServlet类而不是继承GenericServlet类。 查看HttpServlet类的帮助文档可以看到其中有一个名为service的方法当客户端每次访问一个Servlet程序时Servlet引擎都将调用这个方法来进行处理。service方法接受两个参数一个是用于封装HTTP请求消息的对象其类型为HttpServletRequest另一个是代表HTTP响应消息的对象其类型为HttpServletResponse。调用HttpServletResponse对象的getWriter方法可以获得一个文本输出流对象向这个流对象中写入的数据将作为HTTP响应消息的实体内容部分发送给客户端。 :动手体验编写与编译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 size30 colorredwww.it315.org/fontbr); 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 CLASSPATHtomcat的安装目录/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文件。 转载于:https://www.cnblogs.com/spring3/archive/2006/06/14/2401797.html