为了使开发者能尽快的开发企业级的应用程序,Sun在1999年推出一种基于J2SE(用于开发桌面应的Java标准版)的开发模型:J2EE,用于开发服务器应用程序与服务的Java企业版,他运行于J2EE服务器上。

J2EE平台提供了一个多层结构的分布式的应用程序模型,该模型具有组件复用的能力,基于扩展标记语言(XML)交互数据,统一的安全模型和灵活的事务控制,不仅比以前能更快对市场提出新的解决方案,而且这种基于组件,平台无关性的J2EE解决方案使得应用程序以免受供应商以及应用程序界面的限制,使得应用商及买主能选择他们需要的组件技术及产品。

一,J2EE框架:

1.1 分布式多层应用程序模型

早期应用系统一般都为两层的C/S结构模型,即客户端/服务器端模型,客户端实现界面功能跟业务逻辑,服务端器一般只提供简单的数据库访问协议,这种模型在系统布署当初是非常简单的,但是对于升级跟维护会有麻烦,不利于扩展,当然由于业务逻辑集中到界面功能开发,没有多少可复用性,对于数据安全而言也是不太好的。

随着企业的发展,业务范围的扩大,企业急需能扩展系统的服务,响应客户、合作商的业务需求操作,并能快速的响应用户操作,这就需要一种体系结构模型来服务于这种需求,使得新需求能快速接入或更换现有的系统或遗留的旧系统,使之能快速响应市场的变化。

这种服务要能体现以下几个特点-优点:

1). 高可用性:这种服务应该可用于绝大部分的环境,解决大部分的商业需求;

2). 安全性:必须要能保护用户隐私及企业的数据安全;

3). 可扩展性:应用系统应该能够满足越来越多的用户访问需求,支持方便的对系统进行硬件及软件方面的扩展;

4). 可依赖性:用户能够使用系统进行安全稳定的商业交易;

J2EE是一种多层结构的公布式模型,解决了两层结构(C/S)很多方面的问题,他提供的中间层,把功能界面从复杂的业务逻辑中分离出来,使得开发人员可以专注的业务逻辑的开发,并且J2EE提交了把功能与数据接入到EIS相结合的功能;降低了开发难度以及成本,缩短了开发时间,使得企业能够尽可能快的满足用户需求,在市场中展开竞争;

一般的J2EE可分为四层:

1). 处于客户端浏览器上的Applet组件, 可称为Applet 容器;

2). 处于客户端的应用程序客户端组件,可称为 Application Client Container;

这两个处理客户层中!

3). 处于J2EE服务器的 Web组件,该组件用于执行JSP组件以及Servlet组件, 也称为 Web容器;

4). 处于J2EE服务器的 EJB组件,EJB组件用于存放执行商业业务逻辑,也称为EJB容器;

这两个处于J2EE服务器中,

5). 再来一层EIS层,主要是存放数据库;

J2EE完全手册(一)的更多相关文章

  1. J2EE完全手册(二)

    1.2 客户端 (Web客户端,应用程序客户端) 1.2.1 Web客户端: 一般简单讲,就是显示由在Web层的web组件中生成的包含Html 及 XML标记语言的动态Web页面(.jsp[.do]) ...

  2. J2EE学习中一些值得研究的开源项(转)

    这篇文章写在我研究J2SE.J2EE近三年后.前3年我研究了J2SE的Swing.Applet.Net.RMI.Collections. IO.JNI……研究了J2EE的JDBC.Sevlet.JSP ...

  3. MySQL 5.1参考手册

    目录 前言 1. 一般信息 1.1. 关于本手册 1.2. 本手册采用的惯例 1.3. MySQL AB概述 1.4. MySQL数据库管理系统概述 1.4.1. MySQL的历史 1.4.2. My ...

  4. J2EE开源项目

    这篇文章写在我研究J2SE.J2EE近三年后.前3年我研究了J2SE的Swing.Applet.Net.RMI.Collections.IO.JNI……研究了J2EE的JDBC.Sevlet.JSP. ...

  5. J2EE学习路线

    第一部分:  JAVA语言基础知识.包括异常.IO流.多线程.集合类.数据库.(切记基础知识一定要时时刻刻巩固,注意,如果你是想以最快速度学习J2EE,关于Java中的Swing知识点,就只做了解)  ...

  6. MyBatis极速入门开发手册(2017-2-6更新)

    前言: 本篇文章对我的学习内容做一个归纳梳理,同时也记录一些学习过程中遇上的问题及注意事项等等,可以帮助新入门的朋友们消除一些误区与盲区,希望能帮上一些正在学习的朋友们.在编写时会引用一些mybati ...

  7. 3、J2EE学习推荐书籍

    3.J2EE学习推荐书籍       J2EE的学习应该循序渐进,一本好书会很快上手和深入.在学习J2EE之前,应该学好SQL,基本上,程序设计都会跟数据库打交道.如果SQL没学好,就如同房子没有基脚 ...

  8. DevOps之服务手册

    唠叨话 关于德语噢屁事的知识点,仅提供精华汇总,具体知识点细节,参考教程网址,如需帮助,请留言. <DevOps服务手册(Manual)> <IT资源目标化>1.设施和设备(I ...

  9. j2ee应用开发调试工具

    j2ee应用程序不能独立运行,需要运行在一个servlet/jsp容器中,常用的servlet/jsp容器如:tomcat,jetty等.在开发调试j2ee程序时,也需要部署在一个指定的容器中.如果每 ...

随机推荐

  1. UE4添加植被Foliage Type

    在UE4中的地形渲染上不可避免的需要添加植被,而如果采取手动添加StaticMesh植被的方式则会浪费大量的时间精力. UE4提供了一种批量添加地面植被类型的方式Foliage Type.在编辑器内容 ...

  2. openstack删除僵尸卷

    问题描述: 最近在清理openstack环境,在删除cinder云硬盘时,一直发现有两个卷在删除中. 解决方法如下: 首先我们去cinder的数据库中找到这个卷,命令为: MariaDB [(none ...

  3. 智能合约bug以及修改方案

    截取两篇文章:第一遍文章说的是智能合约能不能修改的问题: ETC转到ETH地址以及转币进ETH智能合约账户能不能转出来? 第0章 引言 如果ETC充值到了ETH地址上,能找回来吗?答案是不一定. ET ...

  4. Arcengine效率探究之二——属性的更新(转载)

    http://blog.csdn.net/lk103852503/article/details/6570748 修改一批要素的属性有多种方法,当数据量较大时,若选择不当可能会大大影响速度. 一.IR ...

  5. React Router学习

    React Router教程 本教程引用马伦老师的的教程 React项目的可用的路由库是React-Router,当然这也是官方支持的.它也分为: react-router 核心组件 react-ro ...

  6. 2-Nineteenth Scrum Meeting-20151219

    任务安排 成员 今日完成 明日任务 闫昊 写完学习进度记录的数据库操作 请假(数据库) 唐彬 和服务器老师交流讨论区后台接口 请假(数据库) 史烨轩  尝试使用downloadmanager对noti ...

  7. 20135327郭皓——Linux内核分析第二周 操作系统是如何工作的

    操作系统是如何工作的 上章重点回顾: 计算机是如何工作的?(总结)——三个法宝 存储程序计算机工作模型,计算机系统最最基础性的逻辑结构: 函数调用堆栈,高级语言得以运行的基础,只有机器语言和汇编语言的 ...

  8. [Docker基础]如何清除不用的资源

    Docker - How to cleanup resources 有时你可能需要清理Docker中不用的资源,特别是在学习Docker过程中创建的镜像.容器.网络.存储卷等. delete volu ...

  9. ”数学口袋精灵“第二个Sprint计划---第二天

    “数学口袋精灵”第二个Sprint计划----第二天进度 任务分配: 冯美欣:欢迎界面的音效 吴舒婷:游戏界面的动作条,选择答案后的音效 林欢雯:完善算法代码的设计 进度:   冯美欣:找到了几个音乐 ...

  10. 第二个spring冲刺总结

    讨论成员:罗凯旋.罗林杰.吴伟锋.黎文衷 第二阶段总体是做到了四则运算的demo,,包括APP进入动画,以及界面的基本效果设计,还有能进行综合计算(选择题,可以 自动生成简单,容易,困难 三种难度  ...