为了使开发者能尽快的开发企业级的应用程序,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. Zookeeper 通知更新可靠吗? 解读源码找答案!

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由特鲁门发表于云+社区专栏 导读: 遇到Keepper通知更新无法收到的问题,思考节点变更通知的可靠性,通过阅读源码解析了解到zk Wa ...

  2. 树形DP ---- Codeforces Global Round 2 F. Niyaz and Small Degrees引发的一场血案

    Aspirations:没有结果,没有成绩,acm是否有意义?它最大的意义就是让我培养快速理解和应用一个个未知知识点的能力. ————————————————————————————————————— ...

  3. Linux内核设计与实现 第一章 第二章

    第一章 Linux内核简介 Unix特点: (1)     Unix很简洁,仅仅提供几个几百个系统调用并且有一个非常明确的设计目的 (2)     在Unix中,所有的东西都被当作文件对待,通过一套相 ...

  4. 《Linux内核》课本读书笔记 第三章

  5. python scipy stats学习笔记

    from scipy.stats import chi2 # 卡方分布from scipy.stats import norm # 正态分布from scipy.stats import t # t分 ...

  6. 2013长春网赛1010 hdu 4768 Flyer

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4768 题意:有n个社团发传单,每个社团发给编号为A_i, A_i+C_i,A_i+2*C_i,…A_i ...

  7. 消息队列1:RabbitMQ解析并基于Springboot实战

    RabbitMQ简介 AMQP:Advanced Message Queue,高级消息队列协议.它是应用层协议的一个开放标准,为面向消息的中间件设计,基于此协议的客户端与消息中间件可传递消息,并不受产 ...

  8. 查看iOS应用crash日志

    基本操作: 1.电脑安装好Xcode,连接好手机设备 2.打开Xcode,点击Window-Devices and Simulators 3.选中手机设备,点击View Device Logs,即可查 ...

  9. Java之可变参数方法使用说明

    代码: package test_demo; /* * 可变参数函数说明 * 传入指定数据类型的数组 * 优先匹配固定长度函数 * */ public class VarArgsDemo { // 可 ...

  10. CORS跨域资源共享简述

    什么是CORS? 默认情况下,为预防某些而已行为,浏览器的XHR对象只能访问来源于同一个域中的资源.但是我们在日常实际开发中,常常会遇到跨域请求的需求,因此就出现了一种跨域请求的方案:CORS(Cro ...