servlet

1.........servlet特点

1) servlet是个普通java类   主要继承httpservlet类,继承httpservlet类是为了创建一个http协议的servlet程序

2)servlet程序交给tomcat运行的

2..........servlet开发过程

1)把servlet的class字节码拷贝到WEB-INF/classes文件下

2)在web.xml中配置

3.........servlet的执行过程

前提:         tomcat服务器启动时,会加载conf/web.xml文件,再加载站点下每个应用web.xml文件

例:站点下的web应用名称     /day10

        资源名称        /hello

1)在day10应用下的web.xml文件中找是否匹配得/hello

2)使用servlet的内部名称在web.xml文件中查找是否相同名称的servlet配置

3)得到对应的servlet-class内容        字符串:cdqf.a_servlet.HelloServlet

4.......servlet的生命周期

1.servlet程序的生命周期是由tomcat控制的  

2.servlet的四个生命周期

    1)构造函数    只调用1次  正面servelt对象在tomcat中是单实例的

      2)init()方法    初始化  创建完servlet对象后调用    只调用1次

        3)service方法     每次请求servlet时调用   调用n次

       4)destroyy方法:servlet对线销毁时调用  ,只调用1次,tomcat停止时   或者web项目重新部署时

5......servlet的四个对象

     1)httpservletrequest对象域       封装请求信息

  2)httpservletresponse对象       封装响应信息

3) servletconfig对象          封装一个servlet配置参数信息

4  servletcontext对象域      封装web应用环境信息

6...........wervletcontext对象域

 1.介绍

servletContext叫servlet的上下文对象,表示该web应用下的环境,一个web项目只有一个serveltContext对象

2创建时机

servletContext是tomcat加载完当前项目 ,作为servletConfig对象的成员变量传入servlet中,通过servletConfig的getservletContext得到的servletCotext对象

3得到全局的参数

方法      java.lang.StringgetInitParameter(java.lang.String name)

java.util.EnumerationgetInitParameterNames()

域相关的方法  

void setAttribute(java.lang.String name,

java.lang.Object object)保存数据

java.lang.Object getAttribute(java.lang.Stringname)得到数据

void removeAttribute(java.lang.Stringname)清除数据

7  转发相关的

RequestDispatchergetRequestDispatcher(java.lang.String path)

在servlet中实现页面跳转

请求重定向:response.sendRedirect(路径);

请求转发:request.getRequestDispacher(路径).forward(request,respone);

/=======请求重定向vs请求转发区别====

请求重定向:

1)地址栏改变,改变为重定向到地址

2)可以重定向到当前web应用,其他web应用,甚至是其他站点资源。

3)处于两次不同的请求。不可以使用request域对象来共享数据。

请求转发:

1)地址栏不会改变。

2)只能转发到当前web应用内部资源。

3)处于同一次请求。可以使用request域对象来共享数据

不同类型资源:

1)web应用内部资源。在当前web应用中的资源

2)其他web应用资源。在同一个站点下的其他web应用的资源。

3)站点外的资源。其他站点下的资源。

D%�����X

你可能感兴趣的:(servlet)