精通
英语
和
开源
,
擅长
开发
与
培训
,
胸怀四海
第一信赖
锐英源精品原创,禁止全文或局部转载,禁止任何形式的非法使用,侵权必究
Java Platform, Enterprise Edition (Java EE) 是Java企业级开发平台,是Oracle拥有的 Java API 集合,软件开发人员可以使用这些API来编写服务器端应用程序。它以前称为 Java 2 Platform, Enterprise Edition 或J2EE。最近流行的模式是对JVM优化,用于支撑特别行业的数据高效应用,所以Java企业级开发还是比较热门。
Sun Microsystems(与IBM等行业合作伙伴一起)最初设计 Java EE 是为了简化瘦客户端分层环境中的应用程序开发 。Java EE 通过创建标准化、可重用的模块化组件以及使层能够自动处理编程的许多方面来简化应用程序开发并减少对编程的需求。
Java EE 应用程序托管在应用程序服务器上,例如 IBM 的WebSphere、Oracle 的 GlassFish 或Red Hat的 WildFly 服务器,所有这些服务器都在云中或企业数据中心内运行。虽然 Java EE 应用程序托管在服务器端,但 Java EE 客户端的示例包括物联网 (IoT)设备、智能手机、RESTful Web 服务、标准的基于 Web 的应用程序、WebSocket甚至在Docker容器中运行的微服务。这是后端开发的典型场景。
Java EE 架构提供的服务可以简化开发人员在构建现代应用程序时面临的最常见挑战,在许多情况下是通过API,从而更容易使用流行的设计模式和行业公认的最佳实践。
例如,企业开发人员面临的一项常见挑战是如何处理来自基于 Web 的客户端的请求。为了简化这一挑战,Java EE 提供了Servlet和JavaServer Pages (JSP) API,它们为活动提供了方法,例如找出用户在在线表单的文本字段中键入的内容或在用户浏览器上存储cookie。
另一个常见任务是如何在数据库中存储和检索信息。为了实现这一目标,Java EE 提供了 Java Persistence API (JPA),它可以轻松地将程序中使用的数据映射到存储在数据库表和行中的信息。此外,通过使用Enterprise JavaBeans (EJB)规范,可以简化创建 Web 服务或高度可扩展的逻辑组件。所有这些 API 都经过充分测试,对于 Java 开发人员来说相对容易学习,并且可以大大简化企业开发中一些最困难的部分。
Web后台是现代社会的关键技术,而Java因为成熟的原因,在Web后台上优势明显。
初学者对JavaEE的要点有所了解就行,主要还是学SpringBoot和SSM框架,毕竟JavaEE太过庞大和复杂,学习周期太长了。下面结合JavaEE历史讲一些知识点。
除了上述四个 API 之外,还有更多 Java API 作为 Java EE 核心技术包含在内,随着 Java EE 8 的最终发布,这一数字将接近 50。这些 Java EE 核心技术大致分为以下文件类别:
1、HTTP 客户端技术。为了处理基于HTTP的客户端,Java EE 包括用于 WebSocket 编程的 Java API、用于JSON处理的 API 、JSF 和 Servlet API 以及 JSP 标准标记库 (JSTL)。
2、数据库和资源访问技术。为了与外部和后端系统交互,Java EE 包括 JavaMail、标准连接器架构、Java 消息服务 (JMS) API 和用于强制执行两阶段提交的 Java 事务 API (JTA)。
3、REST 和 Web 服务技术:帮助开发和部署基于 REST 、SOAP、XML和 JSON 的 Web 服务、用于 RESTful Web 服务的 Java API (JAX-RS) 和基于 XML 的 Web 服务 (JAX- WS)以及用于 XML 消息传递和 XML 注册表 (JAXR) 的 API。
4、Java EE 安全性和容器管理:为了实现自定义 Java EE 安全性和管理Java EE 容器,软件开发人员可以访问容器的 Java 授权合同和容器的 Java 身份验证服务提供者接口。安全和身份是现代应用开发的重点。
上面列出的 API 只是开发人员可用的各种 Java EE 组件的一个示例。Java 标准版或 Java SE 中定义的所有 API 也提供给 Java EE 应用程序。
Java EE 不与 Java SE 竞争,而是在 Java SE 和标准Java 开发工具包 (JDK)提供的基础上构建的 API 超集。
Java EE 应用程序构建在 Java SE 提供的基础之上,所有 Java EE 应用程序都运行在支持 Java SE 定义的所有 API的Java 虚拟机上。
Java 中的服务器端应用程序开发过程包括:
编写利用 Java EE 核心技术的代码
将该代码编译为字节码
将该字节码和任何相关资源打包到企业存档 (EAR) 文件中
将 EAR 部署到应用程序服务器
只需使用文本编辑器和JDK 安装标配的Java 编译器即可完成此过程。但是,有丰富的集成开发环境 (IDE)工具生态系统可帮助快速开发 Java EE 代码应用程序。
在开源 IDE 方面,Eclipse IDE 和 Oracle 的NetBeans IDE 是 Java EE 开发中最受欢迎的两个。两者都提供源代码格式化、语法检查和项目组织,而且它们还有一个丰富的插件社区,允许用户创建组件来为 IDE 添加额外的功能。
通常需要插件来构建、部署和执行与 Java EE 应用程序的持续集成。在这个领域,用于构建项目的插件(如 Maven)、部署工具(如 Gradle)和持续集成技术(如Jenkins和 Hudson)都很受欢迎。
随着 1999 年 12 月 J2EE 规范的发布,企业 Java 标准首次建立。这是对服务器端合规性支持基线的首次尝试,定义了不到十几个 API,重点是前端开发使用 Servlet 和 JSP,后端开发使用 EJB 完成。
随着 2001 年 9 月 J2EE 1.3 的发布,有一些渐进的改进,JSTL 的添加是该版本最重要的成就之一。包含 HTML 框架 JSF 是 2003 年 11 月发布的 J2EE 1.4 的进一步亮点。
开发社区中的许多人嘲笑企业软件开发的 J2EE 方法过于学术化、过于繁琐和沉重。作为 J2EE 开发的替代方案,主要关注消除 J2EE 的 EJB 的使用,程序员 Rod Johnson 创建了 Spring 框架。Spring 独立于 Sun Microsystems(当时是 J2EE 框架的管理者)工作,证明企业级应用程序可以用 Java 编写,而无需整个 J2EE堆栈。
Spring Framework 对基于 Java 的企业软件开发采用了更轻量级的方法,开发人员开始采用这种更简单的应用程序设计方法。轻量级但是性能没有下降,Spring框架是对JavaEE的有效升级。
认识到对传统 EJB 的不满程度不断上升,引入了一种新的轻量级方法,新的 EJB 3.0 规范成为 2006 年 5 月将 J2EE 更名为 Java EE 的一部分。
在当前 JDK 第五版时发布,新品牌的企业 Java 规范被命名为 Java EE 5。Java EE 5 的其他主要新增内容包括 JPA 和 JAX-WS。
虽然 Java EE 5 为基于 SOAP 和 XML 的 Web 服务提供 API 支持,但 2009 年 12 月发布的 Java EE 6 通过包含 Java API for RESTful Web Services (JAX-RS) 引入了对 REST 的支持。
Java EE 6 的另一个重大变化是引入了 Web 配置文件。此功能允许供应商创建符合 Java-EE-6 的服务器,这些服务器仅提供整体 Java EE 功能的一个子集。这些配置文件本质上是按比例缩小的软件堆栈,减少了 Java EE 应用程序的分布大小,从而更容易将应用程序部署到计算能力有限的设备上。
这种新方法为将 Java EE 用于IoT 设备和嵌入式软件提供了机会。例如,Java EE 6 Web Profile 需要 Servlet 和 JSP 支持,但不需要像 JavaMail 或 Java Authentication Service Provider Interface for Containers (JASPIC) 这样的 API 的支持。
Java EE 7 于 2013 年 6 月发布,利用了HTML5的出现和对 Java EE Web 浏览器支持的需求。
引入了用于 WebSocket 开发的 Java API,以及用于 JSON 处理的 Java API,使得将 JavaScript 对象表示法 (JSON) 格式的信息从客户端来回发送到服务器变得更加容易。
Java Community Process (JCP) 计划于 2017 年末发布,它表示最新 Java EE 版本的主要重点将是“支持 HTML5 和新兴的 HTTP 2.0 标准;增强的简化和托管 bean 集成;以及改进的基础设施在云中运行的应用程序。”
期待 Java EE 8 中的新 API,包括 JCache、用于 JSON 绑定的 Java API 和名为 Model-View-Controller 的新 Web 开发框架。此外,许多现有 API 将进行更新,包括用于 WebSocket、JSF、批处理应用程序 API 和 JPA 的 Java API。