“HttpServlet类被定义为抽象类,但是源码里面没有抽象方法。所以没有一定要求实现的方法。之所以定义为抽象类,是因为他继承了GenericServlet这个抽象类。并没有全部实现里面的方法”   那我们自己写的servlet里面不要实现GenericServlet这个抽象类中的方法?

直接使用,不用填充抽象方法。

为什么不用填充?

总的来说,大概如下.

容器会调用你注册好的支持servlet接口的类.容器会自己new它

然后每次有请求来的时候会根据请求类型调用你这个类的get post head...方法, 在调用方法的时候会传递 response,request对象.

而这些调用过程中,可能会存在不同厂家的容器,那自然要用接口来统一,否则你搞你的,我搞我的,那就乱套了. 举例如下:

 建立一个新类:

NewServlet继承HttpServlet(必须如此)

然后给此类加上注解,@WebServlet(urlPatterns = {"/NewServlet"}) (你也可在web.xml里面去注册,效果一样,看自己爱好)



然后每次容器碰到有人访问 /NewServlet 这个路径的时候,就会根据请求方法调用你这个类的doGet doPost....等等方法 而你自己在这些方法中写自己的代码,例如输出 hello world什么的. 当然第一次访问的时候会自动new此类,并且保存在容器中。

所以此类只能由容器调用,不能自己new它,你自己new个instance出来,没有任何用处,因为容器自动实例newservlet的时候会给其设置很多参数,而且每次调用其处理方法时还要传递兼容servletresponse,servletrequest接口的对象,你自己new instance谁给你传递对象啊.

直接注册HttpServet没有用处,其实把HttpServet理解成事件监听类就可以了,专门监听url访问请求.


xxxservlet继承HttpServlet类的更多相关文章

  1. Servlet-通过继承HttpServlet类实现Servlet程序

    通过继承HttpServlet类实现Servlet程序(开发一般用) 一般在实际项目开发中,都是使用继承 HttpServlet类的方式实现Servlet程序 1,编写一个类去继承 HttpServl ...

  2. 编写一个Filter,除继承HttpServlet类外还需要( )。

    A.继承Filter 类 B.实现Filter 接口 C.继承HttpFilter 类 D.实现HttpFilter接口 解答:B

  3. Eclipse操作Servlet入门案例,创建类无法实现Servlet接口和继承HttpServlet类

    问题描述: 从昨天下午到今天中午,这个问题被缠绕了良久.百度了很多,却都没有一言命中要害. 首先,还是基于对Web的理解. 第一:建立的是Dynamic  Web   Project: 第二:然后需要 ...

  4. Servlet接口、GenericServlet类、HttpServlet类

    Servlet是最顶层的接口,其提供的方法有: init(ServletConfig config):void // 初始化 getServletConfig():ServletConfig // 取 ...

  5. 【HttpServlet】HttpServlet类

    创建时间:6.15 HttpServlet 但在实际开发中,我们不会直接去实现Servlet接口,因为那样需要覆盖的方法太多,    我们一般创建类继承HttpServlet 实现步骤: 1)创建类继 ...

  6. java一个类 继承HttpServlet 和实现Servlet区别

    java一个类 继承HttpServlet 和实现Servlet区别 servlet 是一个接口,如果实现这个接口,那么就必须实现接口里面定义的所有方法 而HttpServlet实现了servlet接 ...

  7. HelloServlet类继承HttpServlet利用HttpServletResponse对象

    HelloServlet类继承HttpServlet利用HttpServletResponse对象 HelloServlet类的doGet()方法先得到username请求参数,对其进行中文字符编码转 ...

  8. BaseServlet 继承 httpServlet

    BaseServlet   核心 package cn.core; import java.io.IOException; import java.lang.reflect.Method; impor ...

  9. httpservlet类中两个service方法

    在浏览器访问html页面时,当数据提交给servlet时发生了什么,这是我们需要了解的. 1.我们需要了解一下servlet的继承体系. servlet接口 ------->GenericSer ...

随机推荐

  1. winform 查看远程服务器上的文件

    解决方案: 1. 在目标服务器上发布webservice,实现文件下载的方法. using System; using System.Collections.Generic; using System ...

  2. cocos2dx错误收集

    1.读取ccb文件onNodeLoaded调用两次的问题 不小心把cocosbuilder里的控件的Custom class里填了两次自定义类,如下: 结果在onNodeLoaded时调用了两次,结果 ...

  3. PCI OP WiFi 測试(二):PCI对OP的要求

    PCI OP WiFi 測试(二):PCI对OP的要求 每次看PCI的文档.都一头雾水,本来就非常抽象.看英文就感觉更抽象.泛泛而谈的要求,看一次忘一次.仅仅好翻译成中文.没事就看看,知道指导思想. ...

  4. PHP——通过下拉列表选择时间(转)

    实现效果: 主页代码: <script type="text/javascript" src="jquery.min.js"></script ...

  5. PHP输出javascript,alert中文乱码解决办法

    echo '<html><head><meta http-equiv="Content-Type" content="text/html; ...

  6. 如何用redis/memcache做Mysql缓存层

    方法一:直接用MysqlMysql有缓存,实现了类似的功能,如果需要缓存的东西很多,可以把缓存的内存设置大一点.这样的好处就是不用去控制缓存的失效,确保数据一致性. 方法二:启用用DAO框架的缓存比如 ...

  7. PHP中钩子函数的实现与认识

    PHP中钩子函数的实现与认识 分类:PHP编程  作者:rming  时间:2014-09-21 假如有这么一段程序: function fun(){ fun1(); fun2(); }   首先程序 ...

  8. ubuntu14.04安装pycurl

    一. 安装依赖项 sudo apt-get install libcurl4-gnutls-dev 二. 安装pycurl pip install pycurl 三. 检验是否安装成功 进入pytho ...

  9. (转)SQL执行顺序

    SQL语句理解:http://blog.jobbole.com/55086/ 窗口函数/分析函数:http://blog.csdn.net/mfkpie/article/details/1636451 ...

  10. 用MathType编辑带点星号的流程

    在数学中,在进行问题描述的同时,可能也会使用到一些文本符号,比如带点星号.这些符号嵌入在公式中,就需要在MathType数学公式编辑器中来编辑,而不是在文档中编辑.而对于公式编辑器来说,编辑一些常用的 ...