Servlet的使用基本包含三个步骤:

1、继承HttpServlet 或实现Servlet 接口 (根据源码分析最终都是对servlet接口的实现)

2、配置地址: 配置web.xml 或者用注解的方式@WebServlet("/")

3、重写service方法

Servlet使用的几种基本方法及其比较

一、实现servlet接口,继承GenericServlet,继承HttpServlet,创建servlet类

个中区别:

1、Servlet接口的实现

其中接口要实现的方法有以下几个:

1)init(ServletConfigconfig)初始化根据servlet的配置进行初始化

2)、getServletConfig()  获取servlet配置,其返回值就是servletContext

3)、service(ServletRequestrequest, ServletResponse respose) service方法,解决处理逻辑以及业务的实现

4)、getServletInfo() 其返回得到的是servlet的描述信息

5)、destroy()使用结束的销毁

其中主要用到的是service(),其中service方法的参数request和respose是由服务器解析请求页面传过来的参数。当然request以及response涉及到很多的方法,此就不做过多解释,大家可以自己自己使用过程中了解总结。

2、继承GenericServlet

    

public abstract class GenericServlet      implements Servlet, ServletConfig, java.io.Serializable

可以看出GenericServlet其实是接口了servlet,并且对servlet实现方法中的service进行了抽象,这样在继承GenericServlet时只需要实现service方法就足够了,这样对于简单的逻辑开发就节省了很多代码量,也方便使用。

3、继承HttpServlet   推荐使用

HttpServlet其实就是对GenericServlet类的继承,使用时需要重写service方法,在此就不多赘述。

4、创建servlet类  推荐使用

既然servlet适用范围很广,使用范围大,那么开发者就为其创建了更加简单的使用方法,直接创建使用,这种方式也是比较推荐的方法,创建出来之后大家可以看到其又继承了HttpServlet,所以我们可以说其归根到底还是在实现servlet接口。

      (创建servle类,若new没有那么就在Other中找一下)

    

  //类声明之上是注解的方法,指定对应请求地址

              @WebServlet("/ServletTest")

             publicclass ServletTest extends HttpServlet {

               //因为在HttpServlet中接口了序列化,因此在这声明了一个序列化Id,可删

                private static final long serialVersionUID = 1L;

               //构造函数

                 public ServletTest() {

                      super();

                  }

              //值得一提的是其将service方法拆分,这里分为doGet() 和 doPost方法分别处理请求中doGet或doPost请求,但逻辑处理时基本不分。

             protectedvoid doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

                   response.getWriter().append("Served at: ").append(request.getContextPath());

              }

               protectedvoid doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

                 //这里将doPost请求转到doGet处理,所以若非业务需要完全可以在doGost只写一套处理逻辑  

                   doGet(request, response);

             }

         }

二、配置地址,其中配置地址有两种方式。

1、web.xml配置

在生成动态web项目时都会相应的产生web.xml,其中需要使用servlet时就要对其配置,其基本配置如下:

  <servlet>

     <servlet-name>myServlet</servlet-name>

     <servlet-class>com.lh.c8.n7.MyServlet</servlet-class>

   </servlet>

   <servlet-mapping>

     <servlet-name>myServlet</servlet-name>

     <url-pattern>/MyServlet</url-pattern>

   </servlet-mapping>

其中servlet标签中用servlet-name是设置的servlet标签名,可自由设置,但不可重复,在创建web项目时2.5版本之前直接创建servlet类时会直接生成响应的web.xml配置

servlet-nameurl-pattern地址均用的servlet类名。

servlet-class是标识创建的,创建的servlet类所在的全路径名。

servlet-mapping中的 servlet-name需要与其对应的servlet相同,如此才能映射的到, url-pattern就是标识你的请求地址。

2、注解的方式配置地址

使用@WebServlet(“/请求地址”)

使用了注解的情况下不需要配置web.xml

三、重写其中的方法,主要是对service的重写

对servlet的重写根据自己的业务需求,选择处理方法,同样在创建的servlet类中也按照需求操作,在此不做过多赘述。

大家可能会想到,这里的每个类中只能处理一个servlet请求那么,是不是要对每个请求都要创建或继承servlet啊?是的这种方法确实这样。那么有没有什么好的方法呢,那答案必然是有的啦,就是粉装好的框架SpringMvc,对于SpringMvc 的使用之后会做类似总结,欢迎大家关注。

以上 为个人总结,若存在错误或不妥之处,还请各路大佬指点批评。

Servlet使用简介的更多相关文章

  1. Servlet规范简介——web框架是如何注入到Servlet中的

    Servlet规范简介--web框架是如何注入到Servlet中的 引言 Web框架一般是通过一个Servlet提供统一的请求入口,将指定的资源映射到这个servlet,在这个servlet中进行框架 ...

  2. Java Servlet 技术简介

    Java Servlet 技术简介 Java 开发人员兼培训师 Roy Miller 将我们现有的 servlet 介绍资料修改成了这篇易于学习的实用教程.Roy 将介绍并解释 servlet 是什么 ...

  3. java web分享ppt大纲 -- servlet容器简介

    今天在公司分享了java web的ppt,把ppt大纲放在这里,希望可以帮助需要的人 servlet容器简介 定义 狭义上的,servlet容器为java Web应用提供运行时环境,负责管理servl ...

  4. [原创]java WEB学习笔记47:Servlet 监听器简介, ServletContext(Application 对象), HttpSession (Session 对象), HttpServletRequest (request 对象) 监听器,利用listener理解 三个对象的生命周期

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  5. 【Java】Java Servlet 技术简介

    Java 开发人员兼培训师 Roy Miller 将我们现有的 servlet 介绍资料修改成了这篇易于学习的实用教程.Roy 将介绍并解释 servlet 是什么,它们是如何工作的,如何使用它们来创 ...

  6. Servlet 学习简介

    一.Servlet简介 Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的 ...

  7. Servlet规范简介

    引言 Web 框架一般是通过一个 Servlet 提供统一的请求入口,将指定的资源映射到这个 servlet, 在这个 servlet 中进行框架的初始化配置,访问 Web 页面中的数据,进行逻辑处理 ...

  8. Servlet(简介,请求参数,页面跳转,生命周期,创建,配置,ServletContext,线程)

    1.Servlet简介 servlet是java servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序, 主要功能在于交互式浏览和修改数据,生成动态的web内容 服务端运行的 ...

  9. (day20)javaEE三大组件之一Servlet (简介(二)servletconfig,servletContext,session,cookie,request,response,out)

    javaEE是服务器编程,javaEE提供了服务器的接口让具体的服务器去创建实现的对象 JavaEE是sun公司为了解决企业级开发定义的一套技术,只提供了规范,具体的实现是由服务器完成的 servle ...

随机推荐

  1. javascript之数组快速排序

    快速排序思想其实还是挺简单的,分三步走: 1.在数组中找到基准点,其他数与之比较. 2.建立两个数组,小于基准点的数存储在左边数组,大于基准点的数存储在右边数组. 3.拼接数组,然后左边数组与右边数组 ...

  2. BI服务器配置与客户端情况

    1. BI描述 FineBI是一款纯B/S端的商业智能分析服务平台:支持通过web应用服务器将其部署在服务器上,提供企业云服务器.用户端只需要使用一个浏览器即可进行服务平台的访问和使用.因此在配置使用 ...

  3. 【HTML】模板

    <!DOCTYPE html> <head> <base href="http://www.w3school.com.cn/i/" target=&q ...

  4. Js中有关变量声明和函数声明提升的问题

    在ECMAScript5中没有块级作用域一说,只有函数作用域和全局作用域,在其中声明的变量和函数和其他语言的展现形式不同,在某些情况下不一定需要先定义后使用,函数和变量的使用可以在其声明之前,这到底是 ...

  5. ubuntu 手动安装openssh-server

    先用能上网的机器下载:zlib-1.2.5.tar.openssh-5.6p1.tar.gz.openssl-0.9.8o.tar.tar,接下来,准备安装. 步骤如下: 1.首先解压安装zlib:t ...

  6. mbos之动态图表设计

    前言 所谓,一图胜千言.人脑有80%的部分专门用于视觉处理.而随着数据时代的全面来临,我们自然有必要将数据转化为图形与图表. Mbos是一个快速,稳定的云端轻应用开发平台.帮助企业快速开发移动应用,加 ...

  7. NYOJ--19--next_permutation()--擅长排列的小明

    /* Name: NYOJ--19--擅长排列的小明 Date: 20/04/17 11:06 Description: 这道题可以DFS,然而用next_permutation更简单些 主要是全排列 ...

  8. Activity中finish()和onDestroy()的区别

    finish()方法用于结束一个Activity的生命周期,而onDestory()方法则是Activity的一个生命周期方法,其作用是在一个Activity对象被销毁之前,Android系统会调用该 ...

  9. 67. Add Binary【LeetCode】

    67. Add Binary Given two binary strings, return their sum (also a binary string). For example,a = &q ...

  10. [NOIP2011] 聪明的质监员 二分+前缀和

    考试的时候打的二分但没有用前缀和维护.但是有个小细节手误打错了结果挂掉了. 绝对值的话可能会想到三分,但是注意到w增大的时候y是减小的,所以单调性很明显,用二分就可以.但注意一个问题,就是二分最后的结 ...