首页 > 代码库 > Servlet

Servlet

Servlet:是一门动态网页技术,是一门运行在服务端的java小程序,通过http协议接收来自客户端请

    请求并发出响应。

    

 

 

  Servlet中的方法:

          public void services(ServletRequest req,ServletResponse res){

           }throws ServletException,java.io.IOException

        

        说明:ServletRequest req:代表请求对象,该对象中有http协议的请求部分的所有内容。它的实现类由服务器提供,封装数据也是服务器来做

            ServletResponse res:代表响应对象 ,该对象中由我们写数据(http协议的响应部分)进去。它的实现类同样是服务器提供。

        service:有服务器调用,每次请求都会调用一次。服务器采用的是多线程机制。

  Servlet的执行过程:技术分享

  Servlet生命周期:1.第一次访问servlet时服务器调用servlet构造方法,掉init()方法,创建servlet.一旦创建就一直存在在内存中,除非服务器停止工作(只有第一次访问创建

            Servlet)

           2.创建请求和响应对象。

           3.调用service方法(无论是get请求还是post请求都会先调用service方法,之后再根据get请求还是post请求来调用doget()或者dopost())

          4.服务器停止工作,执行destroy方法(),servlet被杀死。

  ServletConfig:由服务器创建,用来获取<init-param>标签中的<param-value>的值。

              例如:<init-param>

                      <param-name>

                              AAA

                      </param-name>

                      <param-value>

                              BBB

                      </param-value>

                 </init-param>

              ServletConfig config =getServletConfig();

              System.out.println(config.getInitParameter("AAA"));//就可打印BBB。前提是init()方法没有被覆盖。 

   ServletContext:

          生命周期:

                诞生:应用被加载时就有容器创建好

                活着:应用不挂就一直活着

                死亡:应挂了,就挂了

        技术分享

      通过ServletContext获取<context-param>标签里的<param-value>的值代码如下:

 <context-param>      <param-name>          encoding      </param-name>      <param-value>          utf-8      </param-value>    </context-param>ServletContext context = getServletContext();String str = context.getInitParameter("encoding");System.out.println(str);

执行结果:utf-8

 

 

   

 

Servlet