美文网首页
Tomcat跑程序的本质

Tomcat跑程序的本质

作者: ww心安 | 来源:发表于2018-10-14 16:06 被阅读27次

       web容器就是Java web程序跑起来的一个运行环境,就像我们平时运行一个Java代码的时候要先为它创造好JDK环境。同样的道理,要想运行一个web项目也需要一个环境,我们平常大部分用的都是Tomcat服务器。Tomcat服务器就是一个web容器,它是一种单一的服务器,上面只能跑web项目,还有其他混合容器不仅可以运行web项目也可以跑其他项目,有兴趣的可以Google一下。

       以上的解释是通俗的说法。实际上Tomcat服务器就是管理servlet组件的容器,它通过调用自身的方法来实现servlet的运行,具体过程如下:

        1.当客户点击一个URL地址时,该URL指向的是一个servlet而不是一个静态页面。

        2.首先接收到请求的是容器而不是servlet,容器根据该请求判断请求所需要的是servlet,于是就创建httpservletrequest和httpservletresponse两个对象。

        3.容器再根据请求判断所需要的是哪一个servlet,然后在线程池中调派线程,并把第2步中创建的两个对象放入线程中。

        4.容器调用servlet的service()方法,service()方法会调用doGet()或者doPost()方法。

        5.doGet()方法生成动态页面,然后把页面填入response对象中,此时容器任然拥有response对象。

        6.线程结束,容器把response对象转换成http响应,传回客户端,并销毁httpservletrequest和httpservletresponse两个对象。

了解了Tomcat容器之后,有些人就会对servlet产生了疑问。它是什么?用来干什么的?它其实就是一个Java的接口,一种规范,它的作用很单一,因为大部分任务都是容器来完成的,它的主要功能在于交互式地浏览和修改数据,生成动态web内容,它只要实现自身的5个方法就好了。接下来简单介绍一下这5个方法,以后还会详细介绍servlet的:

        1.init(servletConfig config)或者不带参数(核心):对实例进行初始化,由方法2得到的参数作为对象,以便进行servlet的正确初始化。使用该方法可以在处理请求前做好准备,比如连接数据库等。整个周期该方法执行一次。

        2.getServletConfig():获得一个含有servlet配置信息的对象。服务器启动的时候,系统会自动把整个web.xml配置文件中的配置信息封装成一个对象,该对象实现了servletConfig接口。

        3.service()(核心)服务方法:在该方法被容器调用之前要确保init方法的正确,客户端每次发送一次请求该方法就执行一次,整个周期执行n次。

        4.getServletInfo():获得servlet的一个描述。

        5.destroy()(核心):服务器暂停或者程序运行结束,释放暂用的内存。整个周期执行一次。

相关文章

  • Tomcat跑程序的本质

    web容器就是Java web程序跑起来的一个运行环境,就像我们平时运行一个Java代码的时候要先为它创造好...

  • JVM GC原理及调优的基本思路

    和Web应用程序一样,Tomcat作为一个Java程序也跑在JVM中,因此如果要对Tomcat进行调优,需要先了解...

  • tomcat虚拟内存配置

    最近在服务器上跑tomcat时,dep到war包时tomcat就挂了.一度以为自己程序有问题或tomcat版本不对...

  • tomcat优化

    常见的http服务器有apache,nginx,iis,tomcat等。HTTP服务器本质上也是一种应用程序——它...

  • 2018-09-14如何做一个自己的个人网站

    网站发布工具 tomcat 如何发布一个网站 tomcat 文件夹目录结构 Bin: tomcat的命令,程序的...

  • tomcat安装部署

    一、Tomcat下载与安装: 1、直接到官网下载Tomcat安装程序包:http://tomcat.apache....

  • Tomcat stackoverflow

    非 root 用户跑 tomcat 时遇到报错: 解决办法:在 tomcat 的 conf/ catalina.p...

  • Linux上部署Tomcat和JavaWeb项目

    1,查看Linux版本: 2,下载gz结尾的tomcat程序和jdk http://tomcat.apache....

  • 11月3日 tomcat

    1、tomcat的安装环境 tomcat使用java语言来编写,tomcat和php一样都是用来处理动态程序的(也...

  • 黑猴子的家:JavaWeb 之 Tomcat

    Tomcat是可以运行JSP 、Servlet、Filter、 这样的程序的,因为Tomcat已经实现了JavaE...

网友评论

      本文标题:Tomcat跑程序的本质

      本文链接:https://www.haomeiwen.com/subject/gryyaftx.html