1,什么是Servlet
2,Servlet有什么作用
3,Servlet的生命周期
4,Servlet怎么处理一个请求
5,Servlet与JSP有什么区别
6,Servlet里的cookie技术
7,Servlet里的过滤器
8,Servlet里的监听器

一,什么是Servlet?

Servlet是一个Java编写的程序,此程序是基于Http协议的,在服务器端运行的(如tomcat),

是按照Servlet规范编写的一个Java类。

二,Servlet有什么作用?

主要是处理客户端的请求并将其结果发送到客户端。

三,Servlet的生命周期?

Servlet的生命周期是由Servlet的容器来控制的,它可以分为3个阶段;初始化,运行,销毁。

初始化阶段:

1,Servlet容器加载servlet类,把servlet类的.class文件中的数据读到内存中。

2,然后Servlet容器创建一个ServletConfig对象。ServletConfig对象包含了Servlet的初始化配置信息。

3,Servlet容器创建一个servlet对象。

4,Servlet容器调用servlet对象的init方法进行初始化。

运行阶段:

当servlet容器接收到一个请求时,servlet容器会针对这个请求创建servletRequest和servletResponse对象。

然后调用service方法。并把这两个参数传递给service方法。Service方法通过servletRequest对象获得请求的

信息。并处理该请求。再通过servletResponse对象生成这个请求的响应结果。然后销毁servletRequest和

servletResponse对象。我们不管这个请求是post提交的还是get提交的,最终这个请求都会由service方法来处理。

销毁阶段:

当Web应用被终止时,servlet容器会先调用servlet对象的destrory方法,然后再销毁servlet对象,

同时也会销毁与servlet对象相关联的servletConfig对象。我们可以在destroy方法的实现中,释放

servlet所占用的资源,如关闭数据库连接,关闭文件输入输出流等。

在这里该注意的地方:

在servlet生命周期中,servlet的初始化和和销毁阶段只会发生一次,而service方法执行的次数则取决于servlet被客户

端访问的次数

四,Servlet怎么处理一个请求?

当用户发送一个请求到某个Servlet的时候,Servlet容器会创建一个ServletRequst和ServletResponse对象。

在ServletRequst对象中封装了用户的请求信息,然后Servlet容器把ServletRequst和ServletResponse对象

传给用户所请求的Servlet,Servlet把处理好的结果写在ServletResponse中,然后Servlet容器把响应结果传

给用户。

五,Servlet与JSP有什么区别?

1,jsp经编译后就是servlet,也可以说jsp等于servlet。

2,jsp更擅长页面(表现)。servlet更擅长逻辑编辑。 (最核心的区别)。

3,在实际应用中采用Servlet来控制业务流程,而采用JSP来生成动态网页.在struts框架中,

JSP位于MVC设计模式的视图层,而Servlet位于控制层。

六,Servlet里的cookie技术?

cookies是一种WEB服务器通过浏览器在访问者的硬盘上存储信息的手段,是由Netscape公司开发出来的。

cookie技术的好处:

1,Cookie有效期限未到时,Cookie能使用户在不键入密码和用户名的情况下进入曾经浏览过的一些站点。

2,Cookie能使站点跟踪特定访问者的访问次数、最后访问时间和访问者进入站点的路径。
    
创建一个cookie

  1. //里面的两个参数分别是cookie的名和cookie的值
  2. response.addCookie(new Cookie("abc","10000000"));

使用cookie

  1. Cookie[] cook =request.getCookies();//用一个Cookie数组来接收
  2. for(int j=0;j<cook.length;j++){//通过循环来打印Cookie
  3. cook[j].getName()://取cookie的名
  4. cook[j].getValue()://去cookie的值
  5. }

七,Servlet里的过滤器?

过滤器的主要作用

1,任何系统或网站都要判断用户是否登录。

2,网络聊天系统或论坛,功能是过滤非法文字

3,统一解决编码

(2)怎么创建一个过滤器:

1,生成一个普通的class类,实现Filter接口(javax.servlet.Filter;)。

2,重写接口里面的三个方法:init,doFilter,destroy。

3,然后在web.xml配置过滤器。

八,Servlet里的监听器?

监听器的作用:自动执行一些操作。

三种servlet监听器:

对request的监听。对session的监听。对application的监听。

怎么创建一个session监听器:

1,生成一个普通的class类,如果是对session的监听,则实现HttpSessionListener。

2,然后重写里面的五个方法:

    1. public void sessionCreated(HttpSessionEvent arg0) {} // 创建
    2. public void sessionDestroyed(HttpSessionEvent arg0) {} // 销毁
    3. public void attributeAdded(HttpSessionEvent arg0) {} // 增加
    4. public void attributeRemoved(HttpSessionEvent arg0) {} // 删除
    5. public void attributeReplaced(HttpSessionEvent arg0) {} // 替换

Servlet 总结的更多相关文章

  1. servlet文件下载

    创建web工程servlet,新建DownloadServlet.java package com.xmyself.servlet; import java.io.File; import java. ...

  2. java中servlet的各种路径

    1. web.xml中<url-pattern>路径,(叫它Servlet路径!) > 要么以“*”开关,要么为“/”开头 2. 转发和包含路径 > *****以“/”开头:相 ...

  3. Servlet监听器笔记总结

    监听器Listener的概念 监听器的概念很好理解,顾名思义,就是监视目标动作或状态的变化,目标一旦状态发生变化或者有动作,则立马做出反应. Servlet中的也有实现监听器的机制,就是Listene ...

  4. JavaWeb——Servlet

    一.基本概念 Servlet是运行在Web服务器上的小程序,通过http协议和客户端进行交互. 这里的客户端一般为浏览器,发送http请求(request)给服务器(如Tomcat).服务器接收到请求 ...

  5. servlet 简介,待完善

    什么是Servlet?① Servlet就是JAVA 类② Servlet是一个继承HttpServlet类的类③ 这个在服务器端运行,用以处理客户端的请求 Servlet相关包的介绍--javax. ...

  6. java web学习总结(五) -------------------servlet开发(一)

    一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向 ...

  7. servlet使用入门

    创建web工程servlet,然后新建TestServlet.java package com.xmyself.servlet; import java.io.IOException; import ...

  8. 基于jsp+servlet图书管理系统之后台万能模板

    前奏: 刚开始接触博客园写博客,就是写写平时学的基础知识,慢慢发现大神写的博客思路很清晰,知识很丰富,非常又价值,反思自己写的,顿时感觉非常low,有相当长一段时间没有分享自己的知识.于是静下心来钻研 ...

  9. [Servlet] 初识Servlet

    什么是Servlet? 定义 Servlet的全称是 Server Applet,顾名思义,就是用 Java 编写的服务器端程序. Servlet 是一个 Java Web开发标准,狭义的Servle ...

  10. Java Servlet+Objective-c图上传 步骤详细

    一. Servlet 1.创建图片保存的路径 在项目的WebContent下创建一个上传图片的专属文件夹. 这个文件夹创建后,我们保存的图片就在该文件夹的真实路径下,但是在项目中是无法看到上传的图片的 ...

随机推荐

  1. How to delete a team project from Team Foundation Service (tfs.visualstudio.com)

    C:\project>tfsdeleteproject /collection:https://buckh-test2.visualstudio.com/DefaultCollection Te ...

  2. LeetCode: Edit Distance && 子序列题集

    Title: Given two words word1 and word2, find the minimum number of steps required to convert word1 t ...

  3. Tomcat 调优总结

    一. jvm参数调优 常见的生产环境tomcat启动脚本里常见如下的参数,我们依次来解释各个参数意义. export JAVA_OPTS="-server -Xms1400M -Xmx140 ...

  4. Java Error和Exception区别

    Error和Exception都继承自Throwable: 二者不同之处: Exception: 1.可以是可被控制(checked)或者不可控制(unchecked): 2.表示一个由程序员导致的错 ...

  5. Nginx源码安装及调优配置

    导读 由于Nginx本身的一些优点,轻量,开源,易用,越来越多的公司使用nginx作为自己公司的web应用服务器,本文详细介绍nginx源码安装的同时并对nginx进行优化配置. Nginx编译前的优 ...

  6. 对delegate进行扩展 打造通用的"计时完成"方法 z

    让用户尽量少打字 每次让用户输入这么多信息的确很糟糕, 可以改进一下设计: 服务器IP和用户名可以存放在配置文件里面, 初始化的时候默认加载到相应的文本框中; 从安全角度考虑, 密码必须经过用户手动输 ...

  7. [Irving]字符串相似度-字符编辑距离算法(c#实现)

    编辑距离(Edit Distance),又称Levenshtein距离,是指两个字串之间,由一个转成另一个所需的最少编辑操作次数.许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字 ...

  8. 网页抓取:PHP实现网页爬虫方式小结

    来源:http://www.ido321.com/1158.html 抓取某一个网页中的内容,需要对DOM树进行解析,找到指定节点后,再抓取我们需要的内容,过程有点繁琐.LZ总结了几种常用的.易于实现 ...

  9. C#实现APK自动打包

    C#实现APK自动打包     最近做了一个安卓项目,其中有一个自动打包的功能,要把供应商id写入APK后打包.   一.思路     在AndroidMinifest.xml中加入一个标识字段,如下 ...

  10. Mysql视图的作用及其性能分析

    定义:视图是从一个或几个基本表导出的表,它与基本表不同,是一个虚表. 作用: 1.简化操作,不用进行多表查询. 2.当不同种类的用用户共享同一个数据库时,非常灵活,(用户以不同的 方式看待同一数据. ...