servlet类分级:

1.ServletConfig接口类:理解为读取servlet配置的类,里面有四个抽象方法如下:

①getServletName:获取servlet在web.xml中的名字

②getServletContext:获取Servlet上下文,相当于web项目管理所有servlet的对象,可以读取web.xml中配置的全局参数,也可以通过一个servlet设置参数,另外一个servlet读取参数,达到servlet相互沟通的的目的。(转载:具体可以看这里:https://blog.csdn.net/qq_36371449/article/details/80314024)

③getInitParameter:通过参数名获取值

④getInitParameterNames:得到一个<servlet>标签里面所有的参数名字

2.Servlet接口:定义了5个方法,理解为定义了一个servlet的生命(动作)和信息

init,service,destroy三个和servlet生命周期相关的方法,以及一个得到serlvet配置的方法(getServletConfig)和得到servlet(getServletInfo,这个方法在子类中被实现为返回一个空字符串)信息的方法

3.GenericServlet:抽象类,实现了ServletConfig接口和Servlet接口中方法,重写了Servlet类的init()和destroy(),将service方法定义为抽象,强迫子类实现它。

有参init方法和无参init方法的区别:当容器初始化servlet时会调用有参的init()方法(可能和Servlet接口中只有有参的init方法有关吧),如果只有有参init,而没有无参init时,当人们需要重写init方法进行一些其他的初始化,就只能重写有参init方法,如果忘了调用super.init(),那么当使用getServletConfig()方法时,就会出现“NullPointerException”异常,所以在加一个无参init函数,而有参init调用无参init,人们只需重写无参init进行其他初始化即可,这样servlet被初始化时,先调用有参init,然后有参init调用无参init,即你重写的init方法。

4.HttpServlet:抽象类,继承了GenericServlet类,所以可以使用GenericServlet类中的方法,重写了servse方法,通过getMethod()方法来决定使用doGet()或doPost()等方法。

5.自己定义的servlet类:一般继承于HttpServlet,通过继承HttpServlet,可以使用上述4个类中大部分方法,我们只需要根据需要重写其中的方法即可,service方法不用重写。

servlet(1)的更多相关文章

  1. JavaWeb学习之Servlet(二)----Servlet的生命周期、继承结构、修改Servlet模板

    [声明] 欢迎转载,但请保留文章原始出处→_→ 文章来源:http://www.cnblogs.com/smyhvae/p/4140466.html 一.http协议回顾: 在上一篇文章中:JavaW ...

  2. Servlet(一)基础总结

    一.Servlet概述 1.Java Servlet是基于Java的一种技术和标准,是独立于平台和协议,服务器端的java应用程序.与Applet相比.Applet运行在客户端,而Servlet运行在 ...

  3. servlet(2)servlet过滤器

    1.servlet过滤器 用于动态的拦截servlet请求或响应,以变更或使用其中的信息. (1)过滤器和servlet是多对多的关系,即一个过滤器可以用于一个或多个servlet,多个过滤器也可以用 ...

  4. (转)JavaWeb学习之Servlet(二)----Servlet的生命周期、继承结构、修改Servlet模板

    [声明] 欢迎转载,但请保留文章原始出处→_→ 文章来源:http://www.cnblogs.com/smyhvae/p/4140466.html 一.http协议回顾: 在上一篇文章中:JavaW ...

  5. Java基础——Servlet(六)分页相关

    前面写了Servlet(一)到(五),主要是在网上搜罗的视频.对分页这块还是不太清楚.于是有找到一些视频,重新学习了一下.主要是对分页的认识和设计思路.也是为了方便我以后回忆一下.. 一.分页常识 p ...

  6. 实习培训——Servlet(7)

    实习培训——Servlet(7) 1  Servlet 异常处理 当一个 Servlet 抛出一个异常时,Web 容器在使用了 exception-type 元素的 web.xml 中搜索与抛出异常类 ...

  7. 实习培训——Servlet(6)

    实习培训——Servlet(6) 1  Servlet 客户端 HTTP 请求 当浏览器请求网页时,它会向 Web 服务器发送特定信息,这些信息不能被直接读取,因为这些信息是作为 HTTP 请求的头的 ...

  8. 实习培训——Servlet(5)

    实习培训——Servlet(5) 1  Servlet 简介 Servlet 是什么? Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HT ...

  9. JavaWeb之servlet(2)

    servlet(2) ServletContext servlet的上下文 每个jvm的虚拟机中的每个web工程都只有一个ServletContext工程,即在一个web工程中,无论写了多少个Java ...

  10. 多个请求共用一个Servlet(JavaWEB)

    我们在对JavaWEB工程进行开发的时候,我们经常会遇到这样一个问题,在jsp中发送到Servlet的每一个请求都要写一个对应的Servlet,这样会造成一个工程完成下来需要写几十个Servlet,那 ...

随机推荐

  1. count()聚合函数正确用法

    count()聚合计算 count()是聚合函数,对于返回的结果集,一行行地判断,累计值加1,最后返回累计值,count(*).count(主键ID)和count(1)表示返回满足条件的结果集的总行数 ...

  2. JSP 内置对象(上)

    JSP 内置对象是 Web 容器创建的一组对象,不使用 new 关键字就可以直接使用的对象.如上一章中使用脚本实现打印九九乘法表中的out对象 <%-- 脚本:out对象是JSPWriter类的 ...

  3. Synchronized锁性能优化偏向锁轻量级锁升级 多线程中篇(五)

    不止一次的提到过,synchronized是Java内置的机制,是JVM层面的,而Lock则是接口,是JDK层面的 尽管最初synchronized的性能效率比较差,但是随着版本的升级,synchro ...

  4. 【大数据安全】基于Kerberos的大数据安全验证方案

    1.背景 互联网从来就不是一个安全的地方.很多时候我们过分依赖防火墙来解决安全的问题,不幸的是,防火墙是假设"坏人"是来自外部的,而真正具有破坏性的攻击事件都是往往都是来自于内部的 ...

  5. #3 Python面向对象(二)

    前言 上一节主要记录面向对象编程的思想以及Python类的简单创建,这节继续深入类中变量的相关知识,Here we go! Python中类的各种变量 1.1 类变量 类变量定义:在类中,在函数体(方 ...

  6. DSAPI WIN7风格

    在Winform项目中,有时需要将UI变成适应Vista/Windows7/8/10的风格,通过"选用"以下代码来使你的UI支持系统主题渲染. 注:该功能不支持XP,建议使用DS控 ...

  7. Docker 容器镜像删除

    1.停止所有的container,这样才能够删除其中的images: docker stop $(docker ps -a -q) 如果想要删除所有container的话再加一个指令: docker ...

  8. :only-child和:only-of-type选择器的比较

    :only-child 当元素是唯一的子元素,被选择. HTML代码: <body> <div class="x"> <div>第一个DIV&l ...

  9. 小tips:JS的Truthy和Falsy(真值与假值)

    前言 Truthy 不等于 ture,他是指是在Boolean上下文中转换后的值为真的值.我的理解是,在javascript中所有表达式为true的值.同理Falsy指的是在javascript中所有 ...

  10. 覆盖ng-zorro样式(非style.scss)

    之前发现在模板的样式表里写样式不起作用,然后想起vue里有个/deep/,angular会不会也有一个,果然,发现了一个::ng-deep可以在模板的样式表里覆盖ng-zorro的样式.记录一下(●' ...