2025-01-19 08:00:04

什么是Java EE?

我意识到它字面上翻译为Java企业版。但我想问的是,这到底意味着什么?当公司要求有Java EE经验时,他们真正要求的是什么?有ejb经验吗?有使用Java web应用程序的经验?

我怀疑这对不同的人意味着不同的东西,这个定义是主观的。


Java环境有两个版本,J2EE和Se。SE是标准版,其中包括编写单用户应用程序所需的所有基本类。而企业版则是为多层企业应用程序或可能的分布式应用程序设置的。如果您使用的是应用服务器,比如tomcat或websphere,那么您会希望使用带有额外类的J2EE来支持n层。


是的,有EJB、Web应用程序(servlet和JSP)、事务、Web服务、管理和应用服务器的经验。

它还意味着使用“企业级”应用程序的经验,而不是桌面应用程序。

在许多情况下,企业应用程序需要连接到许多遗留系统,它们不仅仅是“web页面”,通过java“版本”上可用的特性,这种连接可以解决。


它的意义一直在变化。它过去指的是servlet、JSP和ejb。 现在它可能意味着Spring和Hibernate等。

他们真正需要的是对Java生态系统、Servlet容器、JMS、JMX、Hibernate等的经验和理解,以及如何将它们组合在一起。

测试和源代码控制也是一项重要的技能。


Java EE实际上是Java平台的技术和api的集合,旨在支持“企业”应用程序,企业应用程序通常可以归类为大规模、分布式、事务性和高可用性的应用程序,旨在支持关键业务需求。

就员工在特定技术领域寻找什么而言,很难说,因为在过去五年中,竞争环境一直在变化。它实际上是关于要解决的问题的类别,而不是其他任何东西。事务和分发是关键。


J2EE traditionally referred to products and standards released by Sun. For example if you were developing a standard J2EE web application, you would be using EJBs, Java Server Faces, and running in an application server that supports the J2EE standard. However since there is such a huge open source plethora of libraries and products that do the same jobs as well as (and many will argue better) then these Sun offerings, the day to day meaning of J2EE has migrated into referring to these as well (For instance a Spring/Tomcat/Hibernate solution) in many minds.

在我看来,这是一本讨论J2EE“开源”方法的好书 http://www.theserverside.com/tt/articles/article.tss?l=J2EEWithoutEJB_BookReview


我想说J2EE经验=对一些J2EE技术有深入的经验,对大多数J2EE技术有一般的知识,对企业软件有一般的经验。


Java EE是用于开发和部署企业应用程序的规范的集合。

一般来说,企业应用程序是指托管在服务器上的软件,这些服务器提供支持企业的应用程序。

规范(由Sun定义)描述了服务、应用程序编程接口(api)和协议。

组成Java EE的13个核心技术是:

JDBC JNDI ejb RMI JSP Java servlet XML JMS Java IDL JTS JTA JavaMail 于JAF

Java EE产品提供者通常是应用程序服务器、web服务器或数据库系统供应商,他们提供实现规范中定义的接口的类。这些供应商在Java EE规范的实现上相互竞争。

当一个公司需要Java EE经验时,他们真正要求的是使用组成Java EE的技术的经验。通常,公司只使用Java EE技术的一个子集。


EE,严格地说,是一组api(就像目前最热门的答案),它使程序员能够构建分布式的事务性系统。其思想是抽象出复杂的分布式事务部分(将由WebSphere或Weblogic等容器实现),让程序员开发业务逻辑而不用担心存储机制和同步。

实际上,它是一个由委员会设计的大杂烩,主要是为了IBM、甲骨文(Oracle)和BEA等供应商的利益而推动的,这样他们就可以销售过分复杂、过度设计、过度无用的产品。它没有最基本的功能(比如调度)!

J2EE是一种营销结构。


似乎Oracle现在正试图摆脱jsp(用Faces代替),并模仿Spring的REST (JAX-RS)和DI。

裁判:https://docs.oracle.com/javaee/7/firstcup/java-ee001.htm

表2-1 web层Java EE技术


JavaServer Faces技术

web应用程序的用户界面组件框架,允许您在XHTML页面上包含UI组件(如字段和按钮),称为Facelets页面;转换和验证UI组件数据;将UI组件数据保存到服务器端数据存储;维护组件状态

表达式语言

Facelets页面中用于引用Java EE组件的一组标准标记

servlet

动态处理请求和构造响应的Java编程语言类,通常用于HTML页面

Java EE的上下文和依赖注入

一组上下文服务,使开发人员可以轻松地在web应用程序中使用企业bean和JavaServer Faces技术