码迷,mamicode.com
首页 > 其他好文 > 详细

Servlet

时间:2016-12-03 18:28:14      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:抽象类   构造器   enum   attribute   ica   turn   ice   构造   generated   

Servlet是一个容器,在javaweb开发中,tomcat就是一个servlet容器。

生命周期:构造器、init初始化、service被多次调用、destroy销毁。

ServletConfig对象封装了所有的配置信息:获取service初始化参数和多个参数、获取servlet名字、获取ServletContext(他是web的大管家)。

init:自动生成当前的servletconfig,是arg0参数的形式。

service:自动生成当前的request(封装所有与请求有关的信息)和response(封装反馈的信息),以arg0和arg1的形式。

ServletContext(他是web的大管家):获取web的初始化参数、application范围内的属性、attribute等。

当我们写servlet时,实现Servlet接口有点繁琐,所以我们可以预先设计一个抽象类,然后只需要继承该抽象类,实现抽象方法service即可。同时也可以实现config接口。

如下:

package com;

import java.io.IOException;
import java.util.Enumeration;

import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
// 自定义的servlet 的实现类 抽象类 所有的servlet都可以继承该类 以简化开发。
public abstract class MyGeneralServlet implements Servlet,ServletConfig {

ServletConfig servletConfig=null;

public void destroy() {
// TODO Auto-generated method stub

}
public ServletConfig getServletConfig() {
// TODO Auto-generated method stub
return servletConfig;
}
public String getServletInfo() {
return null;
// TODO Auto-generated method stub
}
public void init(ServletConfig arg0) throws ServletException {
// TODO Auto-generated method stub
this.servletConfig=arg0;
}

public abstract void service(ServletRequest arg0, ServletResponse arg1);


//以下是ServletConfig接口的方法
@Override
public String getInitParameter(String arg0) {
// TODO Auto-generated method stub
return null;
}
@Override
public Enumeration<String> getInitParameterNames() {
// TODO Auto-generated method stub 这是返回sevlet的init参数 而context获取的是web参数。
return servletConfig.getInitParameterNames();
}
@Override
public ServletContext getServletContext() {
// TODO Auto-generated method stub context是某一个web程序具备的 是web应用的管家
return servletConfig.getServletContext();
//通过获取ServletContext 然后调用ServletContext的getInitParameterNames获取init参数。
}
@Override
public String getServletName() {
// TODO Auto-generated method stub
return servletConfig.getServletName();
}

}

 

Servlet

标签:抽象类   构造器   enum   attribute   ica   turn   ice   构造   generated   

原文地址:http://www.cnblogs.com/XiaoErDuoFancy/p/6129158.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!