Java EE容器

原创 2016年08月24日 20:46:51

Java EE容器

对于开发人员需要引入复杂的代码解决事务以及状态管理问题,处理多线程、资源的调度等待底层细节,很多业务逻辑可以封装在可重用的组件中去,此外,Java EE为每一种组件都提供了基于容器的底层服务。

什么是Java EE容器(Container)

容器是组件与底层平台功能间的接口,在Web组件、企业bean或应用程序客户端运行之前,必须将其装配至Java EE 模块中,并部署至其容器中。

在Java语言中,你或许以为容器就是指List,Set,Map等这些集合的概念,容器也就是保持、持有组件的群集,但是在Java EE中,这种概念更为宽泛,容器不仅仅是持有组件,还负责组件的生命周期以及与它相关的一些服务。

如同Java代码只能编译运行于JVM上一样,你的Servlet/JSP仅运行于Web容器之上,只要你写的Servlet/JSP符合Web容器的标准,你就可以在不同厂商实现的Web容器上运行你的Servlet/JSP,而不用关心底层的Web服务器是什么。

在实际应用中,Web容器是介于Web服务器于Servlet之间的
这里写图片描述

一个请求/响应的例子:

  1. 客户端(浏览器)对Web服务器发送请求;
  2. Web服务器接收到请求,将请求转到Web容器处理,Web容器将请求处理为各种组件(HttpServletRequest、HttpServletResponse、HttpSession等);
  3. Web容器根据请求的URL来决定由哪个Servlet处理该请求;
  4. Servlet根据组件(HttpServletRequest)来决定如何处理该请求,然后根据组件(HttpServletResponse)来建立相关的响应;
  5. Web容器于Web服务器建立沟通,将处理完的响应转化为Http响应给客户端。

容器服务

Java EE中的容器可以提供很多的服务,如安全服务、事务管理、JNDI(Java Name and Directory Interface)、API查询及远程连接等等。其中比较重要的几项:

  • Java EE安全模型可用于配置Web组件或企业bean,从而使企业资源仅被授权用户使用。
  • 事务模型指定一个事务的多个过程之间的关系,使得一次事务中所有过程能够被认作同一处理单元。
  • JNDI查询服务为企业中的不同命名和目录服务提供统一的接口,从而使得应用程序组件可以轻松地访问这些服务。
  • Java EE远程连接模型管理客户端与企业bean之间的底层通信服务,当一个企业bean创建以后,客户端可以调用bean中的方法。

容器还提供一些不可配置的服务,如企业bean与Servlet的生命周期、数据库连接池、数据持久性以及对Java EE平台API的访问。

容器类型

  • Java EE服务器 Java EE产品的运行环境。Java EE服务器提供EJB和Web容器。
  • EJB(Enterprise JavaBeans)容器 为Java EE程序提供企业bean运行的管理 。企业bean及EJB容器运行在Java EE服务器上。
  • 应用程序客户端容器 管理应用程序客户端组件的运行。应用程序客户端及其容器运行yu于客户端。
  • applet容器 管理applet运行,由运行于客户端的Web浏览器以及Java插件组成。
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/dingji_ping/article/details/52244472

四大JavaEE容器之简单比较

现在流行的Java EE容器有很多:Tomcat、JBoss、Resin、Glassfish等等。下面对这四种Java EE容器进行了一番简单的比对。   1. Tomcat是Apache鼎力支持的J...
  • QMW19910301
  • QMW19910301
  • 2016年08月19日 11:32
  • 1466

JavaEE容器简介

1、定义   容器就是组件和底层服务细节之间的接口。在web组件、企业级Bean等能够执行之前,它必须被装配为一个JavaEE模块,并部署在容器上。如下图:      装配的过程主要包括:定...
  • wang379275614
  • wang379275614
  • 2015年02月13日 21:10
  • 2197

Java EE应用的组件

Java EE应用的组件主要包括三个方面 表现层组件(主要是指用户看得到的那些东西):主要负责收集用户的输入的数据(比如表单),或者向用户显示系统状态。最常用的表现层技术是JSP,但JSP并不是唯...
  • u010513756
  • u010513756
  • 2015年07月08日 16:26
  • 16822

JavaWeb 容器与组件

容器是Java EE体系结构中的重要部分。本章一开始曾谈到,正如房屋为居民提供了水管和电力一样,Java EE也为应用程序提供了基础设施。那么,容器就像这所房子的房间。房间里有人或者其他物品,并且通过...
  • shenlin2011
  • shenlin2011
  • 2014年05月04日 20:44
  • 1137

J2EE、Java SE、Java EE、Java ME 区别

 Java SE=Java Standard EditionJava EE=Java Enterprise EditionJava ME=Java Mobile EditionSE主要用于桌面程序,控...
  • yanming19891101
  • yanming19891101
  • 2009年11月08日 17:57
  • 18449

Java EE 快速入门

分享一些边学边做项目的Java EE经历
  • webzhuce
  • webzhuce
  • 2016年11月05日 23:06
  • 3543

Java EE 包含哪些技术

java的大方向就是JavaEE,JavaEE不仅仅是socket编程,具体包括13中核心技术。  JAVAEE的核心API与组件  JAVAEE平台由一整套服务(Services)、应用程序接口(A...
  • wujingjing_crystal
  • wujingjing_crystal
  • 2016年10月17日 16:26
  • 4641

1. Java EE简介 - JavaEE基础系列

什么是Java EE? 真的是你理解的那样吗?
  • renfufei
  • renfufei
  • 2017年07月01日 16:53
  • 2102

安装Java EE

按住win+R,打开运行,输入cmd,打开命令提示符 安装 进入目录:cd C:\Users\11097\Downloads\apache-tomcat-9\apache-tomcat-9.0.0....
  • TaLinBoy
  • TaLinBoy
  • 2017年01月13日 15:41
  • 3217

Java、Java SE、Java Web和Java EE的区别

刚接触Java对这些概念上的东西有点模糊,查了很多资料,想把它分享出来,要是哪里不对请大家指正(^_^) 1、Java 毫无疑问这就是门语言和C、C++、C#一样没什么好说的。 2、Java S...
  • finish_dream
  • finish_dream
  • 2016年08月14日 09:25
  • 9311
收藏助手
不良信息举报
您举报文章:Java EE容器
举报原因:
原因补充:

(最多只允许输入30个字)