Servlet-----GenericServlet的用法和原理

GenericServlet详解与自定义实现
本文详细介绍了Java Servlet中的GenericServlet类,包括其作为Servlet接口实现类的角色,以及如何通过继承它来简化Servlet的开发过程。同时,文章提供了一个自定义的GenericServlet实现示例,展示了如何创建和初始化ServletConfig。

1,GenericServlet是实现了Servlet接口和ServletConfig接口的实现类,是一个抽象类,里面的service方法为抽象方法。

2,如果新建的Servlet程序直接继承GenericServlet,只需要重写servlet方法即可,会使开发更简单简洁。

3,模拟GenericServlet的实现

  

package servlet;
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接口的实现类:让任何开发的Serclet都继承该类,以简化操作。
* 
* @author SmartTiger
* @created 2018年10月16日 下午6:38:46
*/
public abstract class MyGenericServlet implements Servlet, ServletConfig {
// 定义一个ServletConfig类型的私有成员变量
private ServletConfig servletonfig;

/**
* 继承Servlet接口实现的方法
*/
@Override
public void destroy() {
}

@Override
public ServletConfig getServletConfig() {
return servletonfig;
}

@Override
public String getServletInfo() {

return null;
}

/*
* 初始化成员变量
* 
* @see javax.servlet.Servlet#init(javax.servlet.ServletConfig)
*/
@Override
public void init(ServletConfig servletConfig) throws ServletException {
this.servletonfig = servletConfig;

}

@Override
public abstract void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException;

/*
* 继承ServletConfig接口实现的方法
* 
* @see javax.servlet.ServletConfig#getInitParameter(java.lang.String)
*/
@Override
public String getInitParameter(String arg0) {
return servletonfig.getInitParameter(arg0);
}

@Override
public Enumeration<String> getInitParameterNames() {
return servletonfig.getInitParameterNames();
}

@Override
public ServletContext getServletContext() {
return servletonfig.getServletContext();
}

@Override
public String getServletName() {
return servletonfig.getServletName();
}

}

 

 

转载于:https://www.cnblogs.com/hhajj/p/9800091.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值