java ee简介_Java EE 简介

java ee简介_Java EE 简介JavaEE简介JavaEE基本架构JavaEE的诞生是为了解决传统C/S架构的弊端:客户端臃肿庞大,扩展性差等弊端。JavaEE将传统的两层结构细分为了四层。这四层分别是:Client层,Web层,Business层,EIS层JavaEE客户端JavaEE客户端层可分为以下几种:Web客户端,通常是浏览器呈现的网页,这种客户端成为轻量级客户端,因为他们不与…

大家好,又见面了,我是你们的朋友全栈君。

Java EE 简介

Java EE 基本架构

JavaEE 的诞生是为了解决传统 C/S 架构的弊端:客户端臃肿庞大,扩展性差等弊端。 JavaEE 将传统的两层结构细分为了四层。

这四层分别是:Client 层, Web 层, Business 层, EIS 层

9fa5ea41b3bd1d43d97c777b6a018e9c.png

Java EE 客户端

Java EE客户端层可分为以下几种:

Web 客户端,通常是浏览器呈现的网页,这种客户端成为轻量级客户端,因为他们不与数据库打交道,也没有执行业务上的复杂逻辑。

Application 客户端,通常是用Swing或者 AWT写成。 这种客户端一般是直接连到 Business Tier,但是客户端也可以通过 HTTP 连接到 Web Tier 的Servlet。

Applets,是一种运行在浏览器 Java 虚拟机上的小程序。

如果有 ‘data flow’ 在网络上传输,则还需要 JavaBeans。

层与层之间通信,Web 客户端一般先于 Web 层打交道,Web 层与 Business层通讯, Business层从 EIS层交互。 而普通的Application 客户端则可以直接与 Business层交互。如下图:

897033641f19e8e4894fd32166cd1af8.png

Web 层组件

为什么叫“组件”? 与下文容器对应。

Web 组件包括:

Servlet

JSP

JSF

注意: 静态网页不是 Web 组件,而是作为一个Web组件的一个 Bundle。

Business 层组件

Business 组件一般是与业务需求相对应的代码,通常被称为 Enterprise JavaBeans。比如,如何从客户端接受信息,如何根据具体业务逻辑处理信息,以什么样的格式存储在数据库中。

EIS 层

可以是DB或者是一个企业级的信息系统(EIS).

下图展示了 Business 层如何与EIS 交互。

26bc38b7ca4fb21dc0a4ae4db5c2706d.png

Java EE 技术变迁

Java EE前身是J2EE(J2EE最后一个版本号是1.4),截止到目前,最新的是 1.7版本。下图揭示了Java EE中的技术变迁:

1413180774x-954497664.png

每种技术的简单介绍请参照这里;

Java EE 容器

前面我们介绍Java EE分层的时候,Web 层和 Business 层用的是 组件(Component), 原因是Web层和Business层的代码一般要部署到一个容器(Container)中。容器 名字的由来是 Container pattern。

[A CONTAINER provides] an execution environment that is responsible for adding the technical concerns to the COMPONENTS…Conceptually, it wraps the COMPONENTS, thus giving clients the illusion of tightly-integrated functional and technical concerns.

由于组件的类别不同,容器也分很多种,常见的有:

EJB 容器。 管理 Enterprise Beans 执行的容器。

Web 容器。 管理 Web 页面,Servlet和某些 EJB 组件 运行的容器。

Java EE Server。 同时提供 EJB 和Web 容器的运行时。

Application client 容器。管理客户端组件。运行在 client 上。

Applet container。管理 applets 的执行,由浏览器和 Java 插件提供运行时。

如图:

932628b1482396bf088ffde5d02fab00.png

下图展示了这些技术一般应用于哪些容器组件中:

Web :

13cb93bb8b955fceb50afdf2cfd2a96a.png

EJB 容器:

40c38181c3ffe127a7a6c482b1aaa58d.png

客户端:

9ee9ecd74579d34ae3c5b9a2cb1f95c8.png

Java EE 打包与部署

Jar 包, 适合普通的 Java 程序.

War 包, 在 Web 容器中运行.

Ear 包, 在 EE 容器中运行

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156609.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Busybox的安装步骤[通俗易懂]

    Busybox的安装步骤[通俗易懂]一、下载busyboxwww.busybox.net/downloads/(busybox-1.17-0.tar/bz2)二、安装:1、修改Makefile文件:第175行交叉编译器CORSS_COMPILE2、makemenuconfig当出现如下错误时的解决办法:make[2]:***[scripts/kconfig/lxdialog/check…

    2022年7月16日
    11
  • 使用阻塞队列实现线程同步_线程可以并行执行吗

    使用阻塞队列实现线程同步_线程可以并行执行吗一、串行,并行,并发1.名称解释串行:程序按顺序执行,同一时间只能执行一个程序,前一个执行完毕后才轮到后一个并行:多个程序可以同时执行,宏观和微观上看程序都是同时执行并发:同一时刻只有一条程序

    2022年8月16日
    13
  • RPC协议底层原理与实现「建议收藏」

    RPC协议底层原理与实现「建议收藏」RPC协议基本组成在一个典型RPC的使用场景中,包含了服务发现、负载、容错、网络传输、序列化等组件,其中RPC协议就指明了程序如何进行网络传输和序列化。也就是说一个RPC协议的实现就等于一个非透明的RPC调用,如何做到的的呢?Client客户端Server服务端协议基本组成:    1.  地址:服务提供者地址;2.  端口:协议指定开放的端口;3.  运行服务:1.  netty(…

    2022年5月19日
    28
  • java开发培训_Java培训课程那里好?

    java开发培训_Java培训课程那里好?互联网时代,人们纷纷羡慕IT软件行业的前景和“钱景”。有些行动力较强的更是摩拳擦掌,直接通过参加Java培训班来成功转行这一行业。这些通过Java培训班转行成功的人现在如何了,他们的薪资高吗?没有基础但是想要跟上IT软件行业的发展步伐,选择Java培训班显然是一条有效途径。早几年,IT行业发展刚起步的时候,每一天都有无数家互联网企业诞生,对IT技术人才的需求规模巨大,学员从Java培训班毕业之后迅…

    2022年7月8日
    18
  • 中台之上(一):重视业务架构,不要让“业务的归业务、技术的归技术”

    中台之上(一):重视业务架构,不要让“业务的归业务、技术的归技术”

    2021年6月30日
    91
  • 手机怎么识别图片上的文字「建议收藏」

    手机怎么识别图片上的文字「建议收藏」 识别提取文字的方法有很多,大家平时也都会使用到自己的方法,但是你所使用到的方法是不是简单而且识别效果很不错呢?其实手机里有很多的识别转换工具,但是很多的识别效果都不如人意,小编最近发现的一个简单有效的方法,一起来看看吧。1.首先在应用市场里找到如下的拍照识别文字工具,然后将其运行。2.在主页点击右下角的蓝色加号按钮然后会出现两个蓝色的小图标,分别是相册和相机,在此选择相机。…

    2022年6月12日
    36

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号