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 容器中运行

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • mac pycharm永久激活_mac apfs 格式

    mac pycharm永久激活_mac apfs 格式问题Pycharm使用秘钥登录服务器需要RAS格式的秘钥,然而我们在MAC上直接用ssh-keygen生成的秘钥并不满足格式要求,会发生如下报错。***iscorruptorhasunknownformat.OnlySSH2keysinOpenSSHformat(DSA,RSA,ECDSA)orPuTTYPrivateKey*.ppkkeysaresupported.Errormessage:invalidprivatekey:[B@5233fcc0

  • 计算机二级考试公共基础知识题库_公共基础知识计算机二级

    计算机二级考试公共基础知识题库_公共基础知识计算机二级计算机等级考试二级必须考公共基础知识,计算机二级考核计算机基础知识和使用一种高级计算机语言编写程序以及上机调试的基本技能。考试科目:语言程序设计(C、C++、Java、VisualBasic、WEB)、数据库程序设计(VisualFoxPro、Access、MySQL)、办公软件(MSOffice高级应用)共九个科目。新增”MySQL数据库程序设计”、”WEB程序设计”、”MSOffice高级应用…

  • jQuery仿阿里云购买选择购买时间长度

    效果:http://hovertree.com/texiao/jquery/61/jQuery仿阿里云购买服务器选择时间长度,操作简单,只需点击所要选的时间段代码:转自:http://hover

    2021年12月22日
  • python找出肇事者_python100例详解

    python找出肇事者_python100例详解抓交通肇事犯1.问题描述一辆卡车违反交通规则,撞人后逃跑。现场有三人目击该事件,但都没有记住车号,只记下了车号的一些特征。甲说:牌照的前两位数字是相同的:乙说:牌照的后两位数字是相同的,但与前两位

  • 乌班图pycharm激活码2022年_在线激活2022.02.12

    (乌班图pycharm激活码2022年)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.cn/100143.html4K…

  • 微信小程序抢票脚本怎么写_小程序抢票脚本

    微信小程序抢票脚本怎么写_小程序抢票脚本小程序抢票脚本@TOC微信小程序抢票脚本所使用的模块:request和re工具:pycharm和fiddler1.首先通过fiddler工具抓取到请求和参数选择场地信息url信息付款url信息2.代码部分,编写脚本选场地//选场地changdi_url=”https://sapb.szosc.cn/index.php/wxplace/place/pay”date={‘price’:’30’,’fieldtype’:”,

发表回复

您的电子邮箱地址不会被公开。

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