精华内容
下载资源
问答
  • Web容器

    万次阅读 2016-09-25 10:59:22
    目录 1.Java Web相关概念 ...2.Web容器的作用 主要参考文章: http://www.cnblogs.com/yezhaohui/archive/2013/05/21/3091931.html http://www.cnphp6.com/archives/51094 好记性不如烂笔头,从网上搜罗了一...

    目录

    1.Java Web相关概念

    1.1中间件

    1.2容器 

    2.Web容器的作用


    主要参考文章:

                http://www.cnblogs.com/yezhaohui/archive/2013/05/21/3091931.html
                http://www.cnphp6.com/archives/51094

    好记性不如烂笔头,从网上搜罗了一些个人觉得写的比较好,而且比较重要的Java Web相关概念,汇总如下。

    1.Java Web相关概念

    1.1中间件

    所谓中间件指的是提供系统软件和应用软件之间连接的软件,中间件处在操作系统、网络、数据库等系统软件层之上,应用软件层之下,其作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。这样设计的好处是:将应用程序运行环境与操作系统分离,从而使应用程序开发者不必再考虑诸多的系统通信问题,而直接关注该应用程序的功能实现。我们常说到的容器的概念其实就是中间件的一种。

    J2EE提出的背景:

    1、企业级应用框架的需求:在许多企业级应用中,例如数据库连接、邮件服务、事务处理等都是一些通用企业需求模块,这些模块如果每次在开发中都由开发人员来完成的话,势必将会造成开发周期长和代码可靠性差等问题。于是许多大公司开发了自己的通用模块服务,这些服务性的软件系列统称为中间件。

    2、 为了通用必须要提出规范,不然无法达到通用,在上面的需求基础之上,许多公司都开发了自己的中间件,但其与用户的沟通都各有不同,从而导致用户无法将各个公司不同的中间件组装在一块为自己服务。从而产生瓶颈。于是提出标准的概念。其实J2EE就是基于JAVA技术的一系列标准。

    目前常见的中间件角色:

    Apache的Tomcat、IBM公司的WebSphere、BEA公司的WebLogic、Kingdee公司的Apusic都属于中间件。并且中间件技术已经不局限于应用服务器、数据库服务器。围绕中间件,在商业中间件及信息化市场主要存在微软阵营、Java阵营、开源阵营。 

    1.2容器 

    容器其实就是一种中间件,常见的有:WEB容器(WEB服务器)、EJB容器、应用服务器。

    WEB容器:给处于其中的应用程序组件(JSP,SERVLET)提供一个环境,JSP容器和SERVLET容器。使JSP,SERVLET直接跟容器中的环境变量接口交互,不必关注其它系统问题。主要由WEB服务器来实现。例如:TOMCAT,WEBLOGIC,WEBSPHERE等。该容器提供的接口严格遵守J2EE规范中的WEB APPLICATION 标准。我们把遵守以上标准的WEB服务器就叫做J2EE中的WEB容器。

    EJB容器:Enterprise java bean 容器。更具有行业领域特色。他提供给运行在其中的组件EJB各种管理功能。只要满足J2EE规范的EJB放入该容器,马上就会被容器进行高效率的管理。并且可以通过现成的接口来获得系统级别的服务。例如邮件服务、事务管理。

    WEB容器和EJB容器在原理上是大体相同的,更多的区别是被隔离的外界环境。WEB容器更多的是跟基于HTTP的请求打交道。而EJB容器不是。它是更多的跟数据库、其它服务打交道。但他们都是实现了与外界环境的交互,从而减轻应用程序的负担。例如SERVLET不用关心HTTP的细节,直接引用环境变量session,request,response就行、EJB不用关心数据库连接速度、各种事务控制,直接由容器来完成。

    应用服务器:作为服务器执行共享业务应用程序的底层的系统软件。

    支持J2EE的应用服务器:

    WEBSPHERE、WEBLOGIC、JBOSS、ORACLE APPLICATION SERVER、SUN ONE APPLICATION SERVER 等。 

    2.Web容器的作用

    #1,通信支持

    利用容器提供的方法,你可以轻松的让servlet与web服务器进行通信,而不用创建serverSocket去监听某个端口,创建流等,容器知道和web服务器之间的协议,servlet不用去关心web服务器和web代码之间的API,只需要将重点放在业务逻辑上面。

    #2,生命周期管理

    容器控制着servlet的生与死,容器控制servlet的加载,实例化和初始化以及确保servlet能被正常回收,总之不用太多考虑资源管理。

    #3,多线程管理

    容器自动地为每一个servlet请求创建一个java线程,针对客户的请求,如果servlet已经运行完了Http相应的服务方法后,这个线程就可以被kill掉了,但是这并不意味着我们在写servlet的时候不用考虑同步问题了,只是容器帮我们创建和管理多个线程来处理多个请求而已。

    #4,声明方式实现安全

    利用容器,可以使用web.xml部署描述来配置安全性,而不用硬编码在servlet中。

    #5,jsp支持

    容器将jsp代码翻译成java代码。

    Web容器处理请求工作流程

    展开全文
  • web容器

    2012-08-11 17:54:36
    web容器是一种服务程序,在服务器一个端口就有一个提供相应服务的程序,而这个程序就是处理从客户端发出的请求,如JAVA中的Tomcat容器,ASP的IIS或PWS都是这样的容器。一个服务器可以多个容器 Tomcat 很受...

    web容器是一种服务程序,在服务器一个端口就有一个提供相应服务的程序,而这个程序就是处理从客户端发出的请求,如JAVA中的Tomcat容器,ASP的IIS或PWS都是这样的容器。一个服务器可以多个容器


    Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。
      Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。
      这里的诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。
    展开全文
  • web 容器

    千次阅读 2012-08-27 16:02:10
    所谓的服务器,广义上讲有很多的概念,硬件角度上说就是一台高性能的Computer...很多时候人们常把诸如Tomcat、IIS、Weblogic 也称之为web服务器, 这对初学者很容易造成混淆,其实这些只是用于开发、集成、部署和管理W

    所谓的服务器,广义上讲有很多的概念,硬件角度上说就是一台高性能的Computer。我们通常指的服务

    器其实应该是装有能够处理具体请求事务的服务器软件的Computer。比如最常见的www服务器、mail服务

    器、计费服务器、ftp服务器等等。很多时候人们常把诸如Tomcat、IIS、Weblogic 也称之为web服务器,

    这对初学者很容易造成混淆,其实这些只是用于开发、集成、部署和管理Web应用、网络应用和数据库应

    用的应用服务器软件。
         那么web容器有该如何理解呢?通俗的讲web容器就是能够支持发布web程序的软件。
    b/s结构下,以常见的自来水供水系统为例来说,整个web系统好比完整的供水系统,用户只需要有水龙头

    (Broswer),水管相当于计算机网络(network),自来水公司的供水系统(即Server),其中的压力水罐

    就是容器(Container)了。
          Tomcat是Apache-Jarkarta的一个子项目,是一个开放式源码,免费支持JSP和Servlet技术的容器,它同

    时又是一个Web服务器软件.由于很多初学者都是用Tomcat作开发的,所以总体上有一个明确的把握还是有

    必要的。

    servlet容器的主要任务是管理servlet的生命周期。而你说的web容器更准确的说应该叫web服务器,它是来管理和部署web应用的。还有一种服务器叫做应用服务器,它的功能比web服务器要强大的多,因为它可以部署EJB应用,可以实现容器管理的事务,一般的应用服务器有weblogic和websphere等,它们都是商业服务器,功能强大但都是收费的。web容器最典型的就是tomcat了,Tomcat是web容器也是servlet容器。

    展开全文
  • Web容器(一):Web容器简介

    千次阅读 多人点赞 2019-06-30 12:12:36
    Jetty》-开篇词 | Java程序员如何快速成长 + 01_Web容器学习路径 Web容器 Web技术的发展史 早期的Web应用主要用于浏览新闻等静态页面,HTTP服务器(比如Apache、Nginx)向浏览器返回静态HTML,浏览器负责解析HTML,...

    本文参照:极客时间-《深入拆解 Tomcat & Jetty》-开篇词 | Java程序员如何快速成长 + 01_Web容器学习路径

    Web容器

    Web技术的发展史

    早期的Web应用主要用于浏览新闻等静态页面,HTTP服务器(比如Apache、Nginx)向浏览器返回静态HTML,浏览器负责解析HTML,将结果呈现给用户。

    随着互联网的发展,我们已经不满足于仅仅浏览静态页面,还希望通过一些交互操作,来获取动态结果,因此也就需要一些扩展机制能够让HTTP服务器调用服务端程序。

    于是Sun公司推出了Servlet技术。你可以把Servlet简单理解为运行在服务端的Java小程序,但是Servlet没有main方法,不能独立运行,因此必须把它部署到Servlet容器中,由容器来实例化并调用Servlet

    而Tomcat和Jetty就是一个Servlet容器。为了方便使用,它们也具有HTTP服务器的功能,因此Tomcat或者Jetty就是一个“HTTP服务器 + Servlet容器”,我们也叫它们Web容器

    其他应用服务器比如JBoss和WebLogic,它们不仅仅有Servlet容器的功能,也包含EJB容器,是完整的Java EE应用服务器。从这个角度看,Tomcat和Jetty算是一个轻量级的应用服务器。在微服务架构日渐流行的今天,开发人员更喜欢稳定的、轻量级的应用服务器,并且应用程序用内嵌的方式来运行Servlet容器也逐渐流行起来。

    Web容器与Spring、Web应用等的关系

    Servlet技术是Web开发的原点,几乎所有的Java Web框架(比如Spring)都是基于Servlet的封装,Spring应用本身就是一个Servlet,而Tomcat和Jetty这样的Web容器,负责加载和运行Servlet。你可以通过下面这张图来理解Tomcat和Jetty在Web开发中的位置。
    在这里插入图片描述

    Web容器作用

    web开发中 web 容器的作用(如tomcat)

    Web容器处理流程

    1.client点击一个URL,其URL指向一个servlet

    在这里插入图片描述

    2.容器识别出这个请求索要的是一个servlet,所以创建两个对象:httpservletrequest、httpservletresponse

    在这里插入图片描述

    3.容器根据请求中的URL找到对应的servlet,为这个请求创建或分配一个线程,并把两个对象request和response传递到servlet线程中

    在这里插入图片描述

    4.容器调用servlet的service()方法。根据请求的不同类型,service()方法会调用doGet()或者doPost()方法

    在这里插入图片描述

    5.doGet()方法生成动态页面,然后把这个页面填入到response对象中

    在这里插入图片描述

    6.线程结束,容器把response对象转换成http响应,传回client,并销毁response和request对象

    在这里插入图片描述

    Web容器涉及的知识点

    Tomcat和Jetty作为工业级的中间件,它们的设计非常优秀,比如面向接口编程组件化骨架抽象类一键式启停对象池技术以及各种设计模式,比如模板方法观察者模式责任链模式等。

    Web容器如何学习?

    操作系统基础

    Java语言其实是对操作系统API的封装,上层应用包括Web容器都是通过操作系统来工作的,因此掌握相关的操作系统原理是我们深刻理解Web容器的基础。

    对于Web容器来说,操作系统方面你应该掌握它的工作原理,比如什么是进程、什么是内核、什么是内核空间和用户空间、进程间通信的方式、进程和线程的区别、线程同步的方式、什么是虚拟内存、内存分配的过程、什么是I/O、什么是I/O模型、阻塞与非阻塞的区别、同步与异步的区别、网络通信的原理、OSI七层网络模型以及TCP/IP、UDP和HTTP协议。

    《UNIX环境高级编程》。

    Java语言基础

    Java的基础知识包括Java基本语法、面向对象设计的概念(封装、继承、多态、接口、抽象类等)、Java集合的使用、Java I/O体系、异常处理、基本的多线程并发编程(包括线程同步、原子类、线程池、并发容器的使用和原理)、Java网络编程(I/O模型BIO、NIO、AIO的原理和相应的Java API)、Java注解以及Java反射的原理等。

    此外你还需要了解一些JVM的基本知识,比如JVM的类加载机制、JVM内存模型、JVM内存空间分布、JVM内存和本地内存的区别以及JVM GC的原理等。

    《Java核心技术》、《Java编程思想》、《Java并发编程实战》和《深入理解Java虚拟机:JVM高级特性与最佳实践》等。

    Java Web开发基础

    具备了一定的操作系统和Java基础,接下来就可以开始学习Java Web开发,你可以开始学习一些通用的设计原则和设计模式。这个阶段的核心任务就是了解Web的工作原理,同时提高你的设计能力,注重代码的质量。我的建议是可以从学习Servlet和Servlet容器开始。

    Web框架的本质是,开发者在使用某种语言编写Web应用时,总结出的一些经验和设计思路。很多Web框架都是从实际的Web项目抽取出来的,其目的是用于简化Web应用程序开发。

    以Spring框架为例,给你讲讲Web框架是怎么产生的。Web应用程序的开发主要是完成两方面的工作。

    •设计并实现类,包括定义类与类之间的关系,以及实现类的方法,方法对数据的操作就是具体的业务逻辑。

    •类设计好之后,需要创建这些类的实例并根据类与类的关系把它们组装在一起,这样类的实例才能一起协作完成业务功能。

    Spring框架就是对Servlet的封装,Spring应用本身就是一个Servlet,而Servlet容器是管理和运行Servlet的,因此我们需要先理解Servlet和Servlet容器是怎样工作的,才能更好地理解Spring。

    展开全文
  • 从事Java Web编程的朋友都知道,一个web应用的组成必须要有web.xml,因为这个是web应用程序的入口,通常我们会选择一种Web容器来发布我们的Web项目,比如Tomcat、Weblogic等容器服务程序。 这些程序都遵从一个标准...
  • Web容器Web服务器及常见的Web容器有哪些?  一、引言  首先来理解一下简单的一个请求发送到响应的过程。 首先,客户端,通常是浏览器或者一些应用发送请求到你的服务器地址,比如访问你的Url或者其他的东西。而...
  • web服务器、Web中间件和Web容器的区别

    万次阅读 多人点赞 2018-11-25 20:36:21
    我们经常会被Web服务器、Web容器和Web中间件这三个概念搞混。因为我们常见的很多网站要么是由IIS搭建,要么是由Apache、Tomcat、Ngnix搭建。所以,我们会把他们都叫成是Web服务器,因为他们都提供了Web服务,可以让...
  • 文章目录1 各个容器1.1 Web容器1.2 Servlet容器1.3 Servlet容器和ServletContext的关系1.4 Spring容器和SpringMVC容器1.5 spring与springmvc容器区别1.6 dubbo容器与spring,springmvc容器区别2 容器间的关系图 ...
  • servlet容器,web容器,spring容器,springmvc容器的区别

    千次阅读 多人点赞 2019-05-03 21:42:40
    web容器中有servlet容器,spring项目部署后存在spring容器和springmvc容器。其中spring控制service层和dao层的bean对象。springmvc容器控制controller层bean对象。servlet容器控制servlet对象。项目启动是,首先 ...
  • web容器解析

    千次阅读 2019-03-10 12:53:04
    web容器和web服务器的区别和联系 一、简述web服务器功能。 web服务器主要作用是处理客户请求,并作出响应。当浏览器发送一个HTTP请求到web服务器,web服务器解析请求,在内部做处理,返回一个HTTP响应给浏览器,...
  • Servlet容器和Web容器

    千次阅读 2015-09-01 13:53:54
    Web容器,负责管理和部署Web应用,其本身可能具备Servlet容器组件;如果没有,一般能将第三方Servlet容器作为组件整合进Web容器。 1.Web容器好比电视机,Servlet容器好比VCD。 没有Servlet容器,你也可以用Web容器...
  • web容器(web服务器)主要有:Apache、IIS、Tomcat、Jetty、JBoss、webLogic等,而Tomcat、Jetty、JBoss、webLogic同时也是servlet容器,或者说他们还包含了servlet容器。没有servlet容器,你也可以用web容器直接...
  • Servlet容器与Web容器

    千次阅读 多人点赞 2017-02-04 15:01:33
    web容器更准确的说应该叫web服务器,它是来管理和部署 web应用的。还有一种服务器叫做应用服务器,它的功能比web服务器要强大的多,因为它可以部署EJB应用,可以实现容器管理的事务,一般的应用服务器 有weblogic和...
  • Web容器原理】web容器设计(1)

    千次阅读 2016-07-07 10:24:46
    开发一个web容器涉及很多不同方面不同层面的技术,例如通信层的知识,程序语言层面的知识等等,且一个可用的web容器是一个比较庞大的系统,要说清楚需要很长的篇幅,本文旨在介绍如何设计一个web容器,只探讨实现的...
  • web容器,spring容器,MVC容器介绍

    千次阅读 2017-12-08 16:23:00
    对于一个web 应用,其部署在web 容器中,web 容器为其提供一个全局的上下文环境(ServletContext ),为其后面的spring IoC 容器提供宿主环境
  • 关系图 借鉴网上看到的一张图,来源于: ...web容器中有servlet容器,spring容器,springmvc容器。 servlet容器保存 Servlet对象。 springmvc容器保存 Controller对象。 spring容器保存 Service、Dao对象。 spring容...
  • Tomcat(web容器)是管理servlet对象的地方,而spring和springMVC是管理bean对象的地方,更进一步的讲,spring是管理service和dao的容器,springMVC是管理controller的容器。其次,spring容器和springMVC容器是父子...
  • web容器:负责管理和部署web应用,其本身可能具备servlet容器组件;如果没有,一般能将第三方servlet容器作为组件整合进web容器。 没有servlet容器,你也可以用web容器直接访问静态页面,比如安装一个apache等,但是...
  • Undertow web容器

    千次阅读 2019-07-23 23:55:34
    Undertow web容器一、Undertow 介绍二、使用undertow2.1、依赖添加2.2、在启动类,配置undewtow-server bean2.3、对比Tomcat启动日志输出2.4、对HTTP 2.0的支持2.5、配置undertow三、undertow 的深入 一、Undertow ...
  • 一句话理解web容器、Tomcat容器、Servlet容器 兴哥码记 18-04-2709:37 Tomcat容器属于web容器的一种,web容器还包括weblogic容器、JBoss容器等;而Tcomcat、webLogic等包含servlet容器。 个人的一句话理解,有...
  • web容器启动spring容器

    2016-10-15 13:11:30
    spring容器是如何在web应用中得到应用的,web容器又是如何以及何时启动spring容器的呢?web.xml中配置 <!---①从类路径下加载spring配置文件-> <param-name>contextConfigLocation clas
  • Web容器 与Spring容器 启动

    千次阅读 2016-11-21 17:04:20
    web容器 与 Spring容器启动顺序与关系
  • servlet容器和web容器

    2015-10-16 08:42:56
    1. web容器好比 电视机 servlet容器好比 VCD 没有VCD你可以看电视,对吧,但是有了VCD没有电视机,你从哪看起?:) 没有servlet容器,你也可以用web容器直接访问静态页面,比如安装一个apache等,但是如果要显示jsp...
  • 而你说的web容器更准确的说应该叫web服务器,它是来管理和部署web应用的。还有一种服务器叫做应用服务器,它的功能比web服务器要强大的多,因为它可以部署EJB应用,可以实现容器管理的事务,一般的应用服务器有...
  • servlet容器,负责管理servlet生命周期。... 应用服务器,其功能远远大于web容器,因为它可以部署EJB应用,可以实现容器管理的事务,一般的应用服务器有weblogic和websphere等,它们都是商业服务器,功能强

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 45,501
精华内容 18,200
关键字:

web容器