加入收藏 | 设为首页 | 会员中心 | 我要投稿 衡阳站长网 (https://www.0734zz.cn/)- 数据集成、设备管理、备份、数据加密、智能搜索!
当前位置: 首页 > 站长资讯 > 外闻 > 正文

HTTP协议与Tomcat服务器

发布时间:2019-04-24 08:22:36 所属栏目:外闻 来源:IT技术学习栈
导读:Http协议Servlet Http协议 什么是协议 双方在交互、通讯的时候, 遵守的一种规范、规则。 http协议 针对网络上的客户端 与 服务器端在执行http请求的时候,遵守的一种规范。其实就是规定了客户端在访问服务器端的时候,要带上哪些东西, 服务器端返回数据

Servlet的通用写法

  1. Servlet (接口) 
  2.         | 
  3.         | 
  4.     GenericServlet 
  5.         | 
  6.         | 
  7.     HttpServlet (用于处理http的请求) 

定义一个类,继承HttpServlet 复写doGet 和 doPost

Servlet的生命周期

  • 生命周期

从创建到销毁的一段时间

  • 生命周期方法

从创建到销毁,所调用的那些方法。

  • init方法

在创建该servlet的实例时,就执行该方法。

一个servlet只会初始化一次, init方法只会执行一次

默认情况下是 :初次访问该servlet,才会创建实例。

  • service方法

只要客户端来了一个请求,那么就执行这个方法了。

该方法可以被执行很多次。一次请求,对应一次service方法的调用

  • destroy方法

servlet销毁的时候,就会执行该方法

1. 该项目从tomcat的里面移除。

2. 正常关闭tomcat就会执行 shutdown.bat

doGet 和 doPost不算生命周期方法,所谓的生命周期方法是指,从对象的创建到销毁一定会执行的方法, 但是这两个方法,不一定会执行。

让Servlet创建实例的时机 提前。

  1. 默认情况下,只有在初次访问servlet的时候,才会执行init方法。有的时候,我们可能需要在这个方法里面执行一些初始化工作,甚至是做一些比较耗时的逻辑。
  2. 那么这个时候,初次访问,可能会在init方法中逗留太久的时间。那么有没有方法可以让这个初始化的时机提前一点。
  3. 在配置的时候, 使用load-on-startup元素来指定, 给定的数字越小,启动的时机就越早。一般不写负数, 从2开始即可。
  1. <servlet> 
  2.         <servlet-name>HelloServlet04</servlet-name> 
  3.         <servlet-class>com.itheima.servlet.HelloServlet04</servlet-class> 
  4.         <load-on-startup>2</load-on-startup> 
  5.       </servlet> 

ServletConfig

Servlet的配置,通过这个对象,可以获取servlet在配置的时候一些信息

先说 , 在写怎么用, 最后说有什么用。

  1. //1. 得到servlet配置对象 专门用于在配置servlet的信息 
  2.     ServletConfig config = getServletConfig(); 
  3.      
  4.     //获取到的是配置servlet里面servlet-name 的文本内容 
  5.     String servletName = config.getServletName(); 
  6.     System.out.println("servletName="+servletName); 
  7.          
  8.  
  9.  
  10.     //2、。可以获取具体的某一个参数。 
  11.     String address = config.getInitParameter("address"); 
  12.     System.out.println("address="+address); 
  13.  
  14.     //3.获取所有的参数名称 
  15.     Enumeration<String> names = config.getInitParameterNames(); 
  16.     //遍历取出所有的参数名称 
  17.     while (names.hasMoreElements()) { 
  18.         String key = (String) names.nextElement(); 
  19.         String value = config.getInitParameter(key); 
  20.         System.out.println("key==="+key + "   value="+value); 
  21.          
  22.     } 

(编辑:衡阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读