什么是Java EE?

shs*_*mer 212 java-ee

我意识到它实际上转换为Java Enterprise Edition.但我要问的是这究竟意味着什么?当一家公司需要Java EE经验时,他们真正需要什么?有EJB经验吗?有Java Web应用程序的经验?

我怀疑这意味着不同的人有不同的东西,而且定义是主观的.

use*_*685 225

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

通常,企业应用程序是指托管在提供支持企业的应用程序的服务器上的软件.

规范(由Sun定义)描述了服务,应用程序编程接口(API)和协议.

构成Java EE的13项核心技术是:

  1. JDBC
  2. JNDI
  3. EJB的
  4. RMI
  5. JSP
  6. Java servlet
  7. XML
  8. JMS
  9. Java IDL
  10. JTS
  11. JTA
  12. JavaMail的
  13. JAF

Java EE产品提供程序通常是应用程序服务器,Web服务器或数据库系统供应商,它们提供实现规范中定义的接口的类.这些供应商在Java EE规范的实现上展开竞争.

当公司需要Java EE经验时,他们真正需要的是使用构成Java EE的技术的经验.通常,公司只会使用Java EE技术的子集.

  • +1好的清单.顺便说一句,我相信JPA(Java Persistence API)也应该在列表中. (35认同)
  • 最后一点为你增添了很多力量,感谢+1 (3认同)
  • 根据 Oracle 网站,“JNDI 包含在 Java SE 平台中。”(https://docs.oracle.com/javase/tutorial/jndi/software/index.html#JDK)。 (2认同)
  • 根据这张图片(https://docs.oracle.com/javase/8/docs/index.html):**JDBC**、**JNDI**和**RMI**位于**Java SE*中*。 (2认同)
  • 好吧,java EE 就像 ruby​​ on Rails EE 或 javascript EE 今天选择了任何语言,就称其为 EE,听起来更好......没有其他语言需要像企业版这样的营销流行语只是说嘿我可以做 web 和 db 。“我知道java”“等等,你知道Java或Java EE”..这就像吹牛我可以在javascript中执行http请求或在rails中访问db..哇,神奇。但商业人士喜欢“企业版”这个词……放弃 EE Java! (2认同)
  • @HR,这相当于每个人都称自己为没有软件工程学位的软件工程师。它们是流行语,而且确实有效。那好吧。 (2认同)

Tob*_*ede 136

Java EE实际上是Java平台的技术和API的集合,旨在支持"企业"应用程序,这些应用程序通常可以归类为大型,分布式,事务性和高可用性应用程序,旨在支持关键任务业务需求.

就员工在特定技术领域寻找的内容而言,很难说,因为在过去的五年里,竞争环境一直在变化.这真的是关于正在解决的问题类别.交易和分配是关键.

  • Jakarta EE 是 Java EE 的新名称。 (2认同)

oxb*_*kes 35

严格来说,J(2)EE是一组APIs(正如目前的最佳答案所有),它使程序员能够构建分布式事务系统.我们的想法是抽象出复杂的分布式事务位(这将由诸如WebSphere或Weblogic之类的Container实现),使程序员无需担心存储机制和同步就可以开发业务逻辑.

实际上,它是一个拼凑在一起的,由委员会设计的混搭,为了IBM,Oracle和BEA等供应商的利益而被推动,因此他们可以出售过于复杂,过度设计,过度设计无用的产品.其中没有最基本的功能(如调度)!

J2EE是一种营销结构.

  • 我知道这是一个古老的答案,但人们仍在阅读它:很久以前 Java EE 的主要卖点是分布式事务系统。即使在 08 年,但今天肯定是关于 REST API(JAX-RS)、验证(Bean Validation)、简单持久性(JPA)MVC Web 框架(JSF、MVC)和一致的可扩展 bean 模型(CDI)。 (2认同)

ste*_*yer 22

有两个版本的Java环境,J2EE和Se.SE是标准版,包括编写单个用户应用程序所需的所有基本类.Enterprise Edition是为多层企业应用程序或可能的分布式应用程序而设置的.如果您正在使用app服务器,例如tomcat或websphere,那么您需要使用J2EE,以及用于n层支持的额外类.

  • 别忘了J2ME! (9认同)
  • 我猜Tomcat仍然是一个Servlet容器,而不是像Jboss/Weblogic那样的App服务器. (6认同)

mac*_*thy 12

这意味着一直在变化.它曾经是指Servlets,JSP和EJB.现在它可能意味着Spring和Hibernate等.

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

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


Osc*_*Ryz 7

是的,具有EJB,Web Apps(servlest和JSP),事务,Web服务,管理和应用程序服务器的经验.

它还意味着,体验"企业"级别的应用程序,而不是桌面应用程序.

在许多情况下,企业应用程序需要连接到许多遗留系统,它们不仅是"网页",而且在java的"版本"上可用的功能可以解决这种连接.