---servlet(四)Servlet和GenericServlet和HttpServlet
来源:互联网 发布:mysql employees表 编辑:程序博客网 时间:2024/05/16 05:39
Servlet和GenericServlet和HttpServlet
UML图:
Servlet
使用直接实现Servlet接口必须实现以下五个方法
- init(servletconfig config)
- service(servletrequest
- destroy()
- getservletconfig()
- getservletinfo()
public class TestServlet implements Servlet { private ServletConfig servletconfig; @Override public void init(ServletConfig config) throws ServletException { // TODO Auto-generated method stub this.servletconfig = config; } @Override public ServletConfig getServletConfig() { // TODO Auto-generated method stub return servletconfig; } @Override public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException { // TODO Auto-generated method stub } @Override public String getServletInfo() { // TODO Auto-generated method stub return getServletInfo(); } @Override public void destroy() { // TODO Auto-generated method stub }}
GenericServlet
GenericServlet类是一个抽象类,提供了Servle接口的基本实现,他的子类需要实现其service方法
public abstract class MyGenericServlet implements Servlet, ServletConfig { private ServletConfig servletConfig; // 以下为实现Servlet接口中的方法 @Override public void init(ServletConfig config) throws ServletException { // TODO Auto-generated method stub this.servletConfig = config; init(); } /** * 两个Init方法,如果以后在子类中想要重写init,直接重写没有参数的init(); * * 如果在子类中重写了init(ServletConfig config), * * 那么servletConfig就不能初始化,调用getServletConfig 会产生空指针异常 * * 通常在编写继承自GenericServlet的Servlet类时,只需重写不带参数的init()方法就可以了。如果覆盖了带参数的init( * ServletConfig config )方法,那么应该在子类的该方法中,包含一句super.init(config)代码调用。 * */ private void init() { // TODO Auto-generated method stub } @Override public ServletConfig getServletConfig() { // TODO Auto-generated method stub return servletConfig; } @Override public abstract void service(ServletRequest req, ServletResponse res) throws ServletException, IOException; @Override public String getServletInfo() { // TODO Auto-generated method stub return getServletInfo(); } @Override public void destroy() { // TODO Auto-generated method stub } // 以下为实现ServletConfig接口的方法 @Override public String getServletName() { // TODO Auto-generated method stub return servletConfig.getServletName(); } @Override public ServletContext getServletContext() { // TODO Auto-generated method stub return servletConfig.getServletContext(); } @Override public String getInitParameter(String name) { // TODO Auto-generated method stub return servletConfig.getInitParameter(name); } @Override public Enumeration<String> getInitParameterNames() { // TODO Auto-generated method stub return servletConfig.getInitParameterNames(); }}
HttpServlet
httpservlet类扩展了genericservlet并且提供了servlet接口中具体于http的实现,它更象一个其他所有的servlet都要扩展的类,主要使用这个类
/** * 对于HTTP协议的一个Servlet基类 * * @author tuxianchao * */public class MyHttpServlet extends MyGenericServlet { @Override public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub if (request instanceof HttpServletRequest && response instanceof HttpServletResponse) { service((HttpServletRequest) request, (HttpServletResponse) response); } } public void service(HttpServletRequest request, HttpServletResponse response) { // TODO Auto-generated method stub // 根据请求方式对应处理 String method = request.getMethod(); if ("GET".equalsIgnoreCase(method)) { doGet(request, response); } else if ("POST".equalsIgnoreCase(method)) { doPost(request, response); } } public void doGet(HttpServletRequest request, HttpServletResponse response) { // TODO Auto-generated method stub } public void doPost(HttpServletRequest request, HttpServletResponse response) { // TODO Auto-generated method stub }}
0 0
- ---servlet(四)Servlet和GenericServlet和HttpServlet
- Servlet与GenericServlet和HttpServlet的关系
- Servlet,GenericServlet和HttpServlet的继承关系
- Servlet——通过GenericServlet和HttpServlet开发Servlet
- servlet/genericservlet/httpservlet和doGet,dopost()之间的区别
- Servlet---详情解析(二)---继承GenericServlet和HttpServlet/适配器
- servlet 、GenericServlet 、HttpServlet 详解
- servlet genericservlet httpservlet
- servlet 、GenericServlet 、HttpServlet 详解
- Servlet实现方式之GenericServlet和HTTPServlet和Servlet接口的区别
- servlet 缺省模式 <GenericServlet> <HttpServlet>
- httpServlet,GenericServlet,Servlet源码分析
- Servlet,GenericServlet,HttpServlet源码解析
- httpServlet,GenericServlet,Servlet源码分析
- Servlet 和 HttpServlet
- (1)Servlet和HttpServlet
- 关于GenericServlet和HttpServlet
- HttpServlet和GenericServlet
- 文本相似度算法_基础
- Node.js 多进程
- hdu 4647 Another Graph Game 贪心 解题报告
- Node.js JXcore 打包
- MVCよく使う方法
- ---servlet(四)Servlet和GenericServlet和HttpServlet
- 如何在局域网内实现文件夹共享
- Java中文分词组件 - word分词
- SetRenderState 设置渲染状态
- 打印出n行的金字塔图案
- Android之JSON解析
- leetcode_c++:哈希:Valid Anagram(242)
- 互联网时代的社会语言学:基于SNS的文本数据挖掘
- java synchronized