Servlet总结

一,什么是Servlet


Servlet是一个Java编写的程序。此程序是基于Http协议的。在server端执行的(tomcat)

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



二,Servlet有什么作用?


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



三,Servlet的生命周期?


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



初始化阶段:


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


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


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


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



执行阶段:


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

然后调用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容器会创建一个ServletRequstServletResponse对象。

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

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

给用户。


五,ServletJSP有什么差别?


1jsp经编译后就是servlet。也能够说jsp等于servlet


2jsp更擅长页面(表现)

servlet更擅长逻辑编辑。 (最核心的差别)


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

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


六,Servlet里的cookie技术?


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


cookie技术的优点:


    1Cookie有效期限未到时,Cookie能使用户在不键入password和username的情况下进入以前浏览过的一些网站。


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

Java代码  

//里面的两个參数各自是cookie的名和cookie的值  

  

response.addCookie(new Cookie("abc","10000000"));  

使用cookie

Java代码  

Cookie[] cook =request.getCookies();//用一个Cookie数组来接收  

  

for(int j=0;j<cook.length;j++){//通过循环来打印Cookie  

  

        cook[j].getName()://cookie的名    

        cook[j].getValue()://cookie的值  

  

}  


七,Servlet里的过滤器?


过滤器的主要作用


1。不论什么系统或站点都要推断用户是否登录。


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


3。统一解决编码


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

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


2。重写接口里面的三个方法:initdoFilterdestroy


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



八,Servlet里的监听器?


监听器的作用:自己主动运行一些操作。

三种servlet监听器:

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

怎么创建一个session监听器:


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


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

Java代码  

public void sessionCreated(HttpSessionEvent arg0) {} // 创建  

  

public void sessionDestroyed(HttpSessionEvent arg0) {} // 销毁  

  

public void attributeAdded(HttpSessionEvent arg0) {} // 添加  

  

public void attributeRemoved(HttpSessionEvent arg0) {} // 删除  

  

public void attributeReplaced(HttpSessionEvent arg0) {} // 替换  

原文地址:https://www.cnblogs.com/yutingliuyl/p/6955196.html