为了使开发者能尽快的开发企业级的应用程序,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. java中多态的实现机制

    多态的概念: 简单来说就是事物在运行过程中存在的不同状态,即父类或接口定义的引用变量指向子类或具体实现类的实例对象.程序调用方法在运行期才进行动态绑定,而不是引用变量的类型中定义的方法. 多态存在的前 ...

  2. 《linux内核分析》chapter3读书笔记

  3. Leetcode题库——48.旋转图像

    @author: ZZQ @software: PyCharm @file: rotate.py @time: 2018/11/16 15:41 要求:给定一个 n × n 的二维矩阵表示一个图像.将 ...

  4. Java编写准备数据源

    1.装饰设计模式 package com.itheima.ds; import java.sql.Array; import java.sql.Blob; import java.sql.Callab ...

  5. springboot项目的创建

    创建springboot项目 包名和项目名 选择需要使用的框架,web 然后再点击下一步,完成即可创建springboot项目

  6. 助教日志—请沈航13级同学将GIT地址和CNBLOG地址发到这篇博文的评论中

    一.评论形式: 学号 姓名 博客地址 GIT地址 如 2011102456 郑蕊 http://www.cnblogs.com/zhengrui0452/ http://121.42.14.1/Rui ...

  7. Mysql的row_format(fixed与dynamic)

     在mysql中, 若一张表里面不存在varchar.text以及其变形.blob以及其变形的字段的话,那么张这个表其实也叫静态表,即该表的row_format是fixed,就是说每条记录所占用的字节 ...

  8. 【题解】 bzoj1597: [Usaco2008 Mar]土地购买 (动态规划+斜率优化)

    bzoj1597懒得复制,戳我戳我 Solution: 线性DP打牌\(+\)斜率优化 定义状态:\(dp[i]\)到了位置\(i\)最少花费 首先我们要发现,如果有一个小方块能被其他的大方块包围,其 ...

  9. 【题解】 [SCOI2010]传送带 (三分法)

    题目描述 在一个2维平面上有两条传送带,每一条传送带可以看成是一条线段.两条传送带分别为线段AB和线段CD.lxhgww在AB上的移动速度为P,在CD上的移动速度为Q,在平面上的移动速度R.现在lxh ...

  10. BZOJ 2480 && 3239 && 2995 高次不定方程(高次同余方程)

    链接 BZOJ 2480 虽然是个三倍经验题(2333),但是只有上面这道(BZOJ2480)有 p = 1 的加强数据,推荐大家做这道. 题解 这是一道BSGS(Baby Step Giant St ...