一 J2EE,在现在的企业应用开发中,这个词似乎已经成为了必不可少的口头禅了。前两天和"老板"聊天,谈到了J2EE,她不由的感慨道:前两三年,我们出去谈项目的时候,要
煞费苦心的劝说客户采用J2EE架构;可是现在呢,客户会主动跟我们说,"是采用J2EE的吗,不是可不行!"。J2EE的流行可见一斑了。下来呢,我想结合自己的一点学习体会,
引出一点J2EE的基本内容。
二
J2EE诞生的背景是什么?
Java 2平台企业版,也就是J2EE,定义了开发多层企业应用程序的标准。它的诞生并不是偶然的,它是在各种条件积累成熟之下的产物。
原因之一:java语言的巨大成功。1994年,java诞生,由于其语言的简单性和,"编写一次,任意运行"的优势,以及internet和intranet迅猛的增长,促使大量开发者和IT机构
在自己的项目中使用java。短短的几年,Java的风潮就席卷全球。
原因之二:c/s结构逐渐转变为多层体系结构。在带来巨大的灵活性后,也同时增加了创建、测试、配置、管理和维护应用组件的复杂性。J2EE平台的出现,正好降低了这些复
杂性。
原因之三:企业,公司纷纷需要参与Internet中来,各种业务都进入了网络。这些企业级应用的快速增长促使其需要一个强壮的、企业级的、以web为中心的应用结构来支撑。
终于,2000年,sun和它的合作者们(IBM等)联手为我们带来了J2EE。而现在用的最多的是J2EE 1.3版本。
三
那么,J2EE平台为企业应用带了什么好处呢?
首先,它在各种领域创建了使用于企业计算需要的一系列标准,如数据库链接、消息中间件、web组件、企业业务组件等等,这些标准构成了企业应用开发的全过程。
其次,J2EE基于开放标准,提供开发组件的标准平台,适用于不同的供应商,用户因此有了更多厂家的选择。
再次,J2EE缩短了产品投入市场时间。产品都是在现有的基础部件之上开发,从而摆脱了自己开发中间件的困扰而专注于自己的业务应用。
在一些资料上也提到了其他的一些好处,但我觉得以上三点应该是J2EE给这个世界带来的最根本的好处了。
四
J2EE到底是什么?
说到底,它是Sun公司定义的一个开发分布式企业级应用的规范。它提供了一个多层次的分布式应用模型和一系列开发技术规范。
J2EE架构包括以下四个层次:
(一) 用户层(Client Tier)
也就是客户端层。用来于用户交互,并把来自系统的信息显示给用户。包括html用户,applet和java application等。
(二) web层
web层由web服务器和web组件构成。J2EE web组件包括JSP和Servlet。该层主要用来处理客户请求,调用相应的逻辑模块,并把结果以动态网页的形式返回到客户端。
(三) 业务层 (Business Tier)
这一层处理应用的核心业务逻辑。业务组件通常被实现为运行在EJB容器内的EJB组件,EJB容器提供组件生命周期、管理持久性、事务和资源分配等。所以这一层也叫EJB层或
应用层。
四) 企业信息系统层 (EIS Tier)
处理企业系统软件,包括企业基础系统、数据库系统和其他遗留系统。EIS层是J2EE应用和非J2EE应用或遗产系统集成的连接点。
其中,业务层和Web层组成了三层J2EE应用的中间层。
五
为实现企业级分布式应用,J2EE定义了丰富的技术标准,包括API。这些API是J2EE每一个产品都必须提供给应用组件的。这些技术涵盖数据库访问、分布式通信、安全等等。
(一) 组件技术:J2EE的核心思想是基于组件和容器的应用。组件可以重用,共享,分布的。
(二) Servlet:用来生成动态页面或接受用户请求产生相应操作。例如作为MVC模式的controler。
(三) JSP:为用户编写动态页面提供了一种简便强大的工具,实际上是通过容器产生相应的Servlet来运行。
(四) EJB:这是J2EE的核心技术,但是并不是说J2EE就是EJB。EJB包括Session Bean,Entity Bean ,Message driven Bean三种形式。其中,Session Bean包括了有状态和无状态两种,它一般封装了具体的业务逻辑;Entity Bean分为CMP和BMP,它是持久数据的对象表示,与数据库中的表直接对应,具体开发中,会话bean和实体bean往往需要结合起来使用;至于Message driven Bean称作为消息驱动Bean,实际上是JMS应用的封装组件。
(五) JDBC:是JAVA语言提供的独立于特定数据库管理系统的开发接口。它提供了一个通用的访问SQL数据库和存储结构的机制,支持基本SQL功能。它包括四种类型的驱动程序:1)通过jdbc-odbc桥访问;2)通过数据库网络库来访问;3)通过中间件来访问;4)纯JAVA驱动,直接访问。其中,1,2,4属于JDBC两层应用,第3种是JDBC三层应用,需要在应用服务器中配置连接池和数据源。
(六) RMI/IIOP:远程方法调用以及Internet Inter-ORB协议。
(七) Java IDL:调用CORBA服务的API。将CORBA融入java平台来提供交互操作的服务。
(八) JNDI:java命名和目录接口,在企业命名和目录服务中访问数据的API。
(九) JMS:java消息服务,可以采用队列和主题两种消息发送方式达到消息的异步传输。
(十) Java 安全:安全是J2EE架构重要的一部分,它通过JAAS(java验证于授权服务),JCE(java安全扩展),JSSE(java安全套接字扩展)几部分来实现。
(十一) JTA:这是一组事务管理的API。程序可以自己来开始、提交、回滚事务,也可以是容器和事务管理器交互。
(十二) Java Mail:发送和接受电子邮件的API。
(十三) 其他,J2EE1.3还包括了对J2EE连接器结构,JAXP(XML解析的Java API)的支持。
总之,J2EE是一个庞大的,分支众多的技术联合体。同时又是一个不断接受新思想,产生新问题的系统,真让人头疼不已^_^。
六
最后,J2EE的提出者们认为,在企业应用的开发和配置的生命周期中,J2EE平台使用一系列的角色来概念化于各种工作流相关的任务。具体角色如下:
J2EE产品提供者
应用组件提供者
应用集成商
应用配置商
系统管理员
工具提供商
虽然有这样的分工,但实际往往一个厂家就做了两三部分的事情,而在开发过程中,一个人也承当了两种角色任务。但是应该清楚,企业应用是一个复杂的,需要许多组织共同协同才能完成的任务。
七
写这篇文章比较痛苦,没有太多自己的观点和实践,只是在总结和罗列别人规定好的东西。还好,在一些能够发挥的地方,尽量加了点自己的经验认识。这只是一个开头,关于J2EE这个大的体系中,有不少东西需要继续学习和探讨,下面的系列将逐步的展开讨论学习。
分享到:
相关推荐
#### J2EE概览与历史背景 J2EE,即Java 2 Platform, Enterprise Edition,是Java技术在企业级应用领域的重要分支,旨在提供一套完整的标准和框架,用于构建可扩展、高可用的企业级应用。J2EE的历史可以追溯至1993年...
#### 一、J2EE概览 - **分布式多层应用程序**:J2EE支持创建复杂的企业级应用,这些应用通常由多层组成,包括表现层、业务逻辑层和数据访问层。这种结构有助于提高系统的可维护性和可扩展性。 - **J2EE容器**:容器...
#### 一、J2EE概览 J2EE(Java 2 Platform, Enterprise Edition)是一个由Sun Microsystems发布的平台规范,它主要用于企业级应用开发,特别是那些涉及多层分布式网络环境的应用。J2EE的核心组件包括JSP、Servlet、...
#### J2EE概览与技术栈 J2EE,即Java 2 Platform, Enterprise Edition,是面向企业级应用的Java平台规范。其核心在于提供一套全面的框架,使得开发人员能够构建可扩展、高性能、安全且易于维护的多层分布式应用。...
#### J2EE概览与核心组件 J2EE是基于Java的平台,专为大型企业级应用程序设计,提供了一套标准化的服务和接口。它主要由以下几个核心组件构成: - **Web组件**:包括Servlets和JSP(Java Server Pages),用于处理...
#### J2EE概览 J2EE(Java 2 Platform, Enterprise Edition)是Sun Microsystems(现已被Oracle收购)为简化企业级应用开发而提出的一种规范标准。它基于Java SE平台,并在此基础上增加了用于开发和部署可移植、...
2. **J2EE 概览**:J2EE(Java 2 Platform, Enterprise Edition)是用于构建企业级应用的平台,它提供了多种服务和组件模型,包括 Servlet、JSP、EJB(Enterprise JavaBeans)。理解这些组件如何协同工作对于开发 ...
### J2EE架构和技术概览 #### 一、概述 J2EE(Java 2 Platform, Enterprise Edition)是Sun Microsystems为满足企业级应用的需求而设计的一套完整的开发平台。它基于Java SE,并在此基础上增加了许多面向大型...
#### J2EE 指南内容概览 - **准备阶段**:介绍了开始学习J2EE之前需要了解的基本概念和技术栈,如开发环境搭建等。 - **第一章:总括**: - **分布式多层应用程序**:解释了J2EE如何支持分布式系统中的多层架构设计...
### J2EE 笔记概览 #### 一、J2EE基础知识介绍 J2EE(Java 2 Platform, Enterprise Edition)是Sun Microsystems为简化企业级应用开发而提出的一套技术标准,它提供了构建分布式系统的基础框架。在J2EE环境中,...
同一个模式模式vs策略 || || 抽象 实现分层思路J2EE模式表现层模式业务层模式集成层模式J2EE模式目录指南术语UML的使用 类图——静态视图 序列图——动态视图 构造型(stereotypes)——表现在类图和交互图中...
#### J2EE技术概览 J2EE(Java 2 Platform, Enterprise Edition)是一种广泛应用于企业级应用程序开发的技术框架,它由Sun Microsystems提出并在2001年发布第一个版本。J2EE旨在简化企业级应用的开发和部署过程,...
#### 35期课程概览 虽然描述提到“内容不太全”,但依然可以从中学习到J2EE的核心技术和最新发展动态。这门课程对于想要深入了解J2EE架构和技术栈的学习者来说是一个不错的选择。下面将详细介绍该课程可能涵盖的一些...
### J2EE开发经典案例概览 #### 一、J2EE概述 J2EE 是一种基于Java标准版的平台,旨在为企业级应用提供一个健壮、灵活且可扩展的基础架构。该平台通过提供多种服务和技术来支持复杂的业务逻辑处理、事务管理、安全...
J2EE(Java 2 Enterprise Edition)是一套由SUN公司(现隶属于甲骨文公司)提出的...这个教程提供了J2EE基础知识的一个全面概览,并通过实例和理论知识的结合,帮助初学者逐渐成长为能够独立开发企业级应用的专业人士。
#### 新增技术概览 1. **JAX-RPC(Java API for XML-based RPC)** - JAX-RPC是J2EE1.4中的关键技术之一,它允许Java应用程序通过XML格式的数据进行远程过程调用(RPC)。JAX-RPC不仅支持传统的RPC调用,还定义了...
### J2EE中文教材知识点概览 #### 一、J2EE技术介绍 - **基本概念**:J2EE(Java 2 Platform, Enterprise Edition)是Sun Microsystems为满足企业级应用的需求而设计的一种标准,它提供了构建分布式多层应用程序所...
### J2EE 1.4平台架构概览 本章的目的是提供J2EE 1.4平台、Web服务技术和J2EE 1.4 Web服务APIs的架构概述。J2EE(Java 2 Platform, Enterprise Edition)规范描述了如何将多种企业级Java API集成到一个完整的平台中...