Java Servlet教程—GenericServlet 类
GenericServlet 类实现了 Servlet、ServletConfig 和 Serializable 接口。它提供了这些接口所有方法的实现,除了 service 方法。
GenericServlet 类可以处理任何类型的请求,因此它是协议无关的。
您可以通过继承 GenericServlet 类并提供 service 方法的实现来创建一个通用 servlet。
GenericServlet 类的方法
GenericServlet 类中有许多方法,它们包括:
- public void init(ServletConfig config) 用于初始化 servlet。
- public abstract void service(ServletRequest request, ServletResponse response) 为传入的请求提供服务。每次用户请求 servlet 时都会调用此方法。
- public void destroy() 在整个生命周期中只调用一次,表示 servlet 正在被销毁。
- public ServletConfig getServletConfig() 返回 ServletConfig 对象。
- public String getServletInfo() 返回有关 servlet 的信息,如作者、版权、版本等。
- public void init() 对于 servlet 程序员来说是一个便利的方法,现在不需要调用 super.init(config)。
- public ServletContext getServletContext() 返回 ServletContext 对象。
- public String getInitParameter(String name) 返回给定参数名称的参数值。
- public Enumeration getInitParameterNames() 返回 web.xml 文件中定义的所有参数。
- public String getServletName() 返回 servlet 对象的名称。
- public void log(String msg) 在 servlet 日志文件中写入给定的消息。
- public void log(String msg, Throwable t) 在 servlet 日志文件中写入解释性消息和堆栈跟踪。
通过继承 GenericServlet 类的 Servlet 示例
以下是通过继承 GenericServlet 类来创建 servlet 的简单示例。
在了解创建 servlet 的步骤后学习会更好。
文件:First.java
1. **import** java.io.*;
2. **import** javax.servlet.*;
3.
4. **public class** First **extends** GenericServlet{
5. **public void** service(ServletRequest req,ServletResponse res)
6. **throws** IOException,ServletException{
7.
8. res.setContentType("text/html");
9.
10. PrintWriter out=res.getWriter();
11. out.print("<html><body>");
12. out.print("<b>hello generic servlet</b>");
13. out.print("</body></html>");
14.
15. }
16.}
这个例子展示了如何继承 GenericServlet 类并实现它的 service 方法,以处理 web 请求。