开发Servlet的三种模式

开发Servlet的三种模式

开发Servlet的三种方式

 

Servlet:java服务器端小程序。

Servlet网络拓扑图


开发Servlet的三种模式
 
开发Servlet的三种模式

sevlet生命周期:

1、servlet容器创建servlet的一个实例
2、容器调用该实例的init()方法
3、如果容器对该servlet有请求,则调用此实例的service()方法
4、容器在销毁本实例前调用它的destroy()方法
一旦请求了一个servlet,就没有办法阻止容器执行一个完整的生命周期。

 

一、通过实现Servlet接口开发Servlet程序

 

/**
 *使用实现Servlet接口的方式来开发Servlet程序
 */
package com.test;
import javax.servlet.Servlet;
import javax.servlet.*;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import java.io.IOException;
import java.io.*;

public class HelloServletInterface  implements Servlet {

	//该函数用于初始化该Servlet(类似于类的构造函数)
	//该函数只会被调用一次(当用户第一次访问该Servlet时调用)
	public void init(ServletConfig parm1) throws ServletException {
		// TODO: Add your code here
		System.out.println("inti()");
	}

	public ServletConfig getServletConfig() {
		// TODO: Add your code here
		return null;
	}
	
	//用于处理业务逻辑,当用户每访问该Servlet时都会被调用。
	//req:用于获得客户端信息
	//res:用于向客户端(浏览器)返回信息
	public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
		// TODO: Add your code here
		System.out.println("service()");
		PrintWriter pw = res.getWriter();
		pw.println("Hello Servlet Interface");
	}

	public String getServletInfo() {
		// TODO: Add your code here
		return null;
	}

	//销毁Servlet实例(释放内存)
	//1、reload该servlet(webApps) 2、关闭tomcat;
	public void destroy() {
		// TODO: Add your code here
		System.out.println("destory()");
	}

   
}
 

Note:每编写一个servlet程序都要进行部署,在web.xml中添加以下信息, 当然如果用myEclipse等集成开发工具就不需要手写了,开发工具会自动添加相关信息。

  <servlet>
	<!-- servlet名 可以任意-->
	<servlet-name>helloServletInterface</servlet-name>
	<!-- 指明servlet的路径,(包名+类名) -->
	<servlet-class>com.test.HelloServletInterface</servlet-class>
</servlet>
<servlet-mapping>
	<servlet-name>helloServletInterface</servlet-name>
	<!--这是在浏览器中输入的访问该servlet的url, 任意的 -->
	<url-pattern>/helloServletInterface</url-pattern>
</servlet-mapping>