Java EE Web Profile与Java EE完整平台

Vou*_*lzy 61 java-ee java-ee-web-profile

Java EE Web Profile认证服务器(如JOnAS)和Java EE Full Platform认证服务器(如JBoss AS)之间有什么区别?

Pet*_*sik 87

这是一个很好的图像解释它.Web配置文件是Java EE的一个子集,其目的是允许开发人员创建更轻量级的应用程序,这些应用程序可以在简单的servlet容器(如Tomcat或Jetty)中使用.

在此输入图像描述

  • 更新:网络资料已更新。服务器组件已移至 Webprofile,如 JAX-RS、JAX-B 等,并添加了一些新组件,如 JSON-P。请参阅 Jakarta EE 的此文档了解更多详细信息:https://jakarta.ee/specifications/webprofile/8/webprofile-spec-8.pdf (2认同)

Bas*_*que 40

未来

2017年末,Oracle将Java EE负责到Eclipse Foundation.Java EE 8之后的未来版本将被称为Eclipse Enterprise For Java(EE4J).或项目EE4J.或者也许EE.next.或雅加达EE.最近几个月,品牌一直在变化.

在Java SE 11中,将删除一些模块.Java EE相关部分正在迁移到Jakarta EE项目的新家.其他如CORBA已被任何感兴趣的组织提供采用.见JEP 320.

Java EE 8

Java EE 8于2017年发布.查看版本历史.

有关详细信息,请参阅JSR 366:Java平台企业版8(Java EE 8)规范.

Java EE是Java标准版(Java SE)的超集.任何Java EE 8实现也是Java SE 8或更高版本的实现.

请参阅Oracle发布的Java EE 8技术列表,其中包含指向JSR和规范的链接.

所有档案

所有Java EE配置文件中都需要以下技术:

Java SE版本8(或更高版本)

•Common Annotations规范定义的资源和组件生命周期注释(Resource,Resources,PostConstruct,PreDestroy)

JNDI "java:"命名上下文

•Java Transaction API(JTA)

网络档案

网站资料是完整的Java EE平台的特定子集,侧重于常用的元素.由Apache TomEE等产品实现,或者使用Eclipse Jetty plus附加组件实现.

•所有Java EE配置文件所需的基本级项目(上面列出:Java SE 8,生命周期注释,JNDI import上下文和JTA)

•Servlet 4.0(JSR 369)

•JavaServer Pages(JSP)2.3

•表达式语言(EL)3.0(JSR 341)

•调试对其他语言的支持(JSR-45)1.0

•JavaServer Pages的标准标记库(JSTL)1.2

•JavaServer Faces(JSF)2.3(JSR 372)

•用于RESTful Web服务的Java API(JAX-RS)2.1

•用于WebSocket的Java API(WebSocket)1.1(JSR 356)

•用于JSON处理的Java API(JSON-P)1.1(JSR 374)

•用于JSON绑定的Java API(JSON-B)1.0(JSR 367)

•Java平台的通用注释(JSR-250)1.3•Enterprise JavaBeans(EJB)3.2 Lite

•Java Transaction API(JTA)1.2

•Java Persistence API(JPA)2.2

Bean Validation 2.0(JSR 380)

•Managed Beans 1.0

•拦截器1.2

•Java EE Platform 2.0的上下文和依赖注入

•Java 1.0的依赖注入

•Java EE安全API 1.0

•容器的Java身份验证服务提供程序接口(JASPIC)1.1

Servlet的唯一

作为使用Web Profile实现的更轻松的替代方法,您可以从Java Servlet/JSP实现开始,例如Apache TomcatEclipse Jetty.虽然不是官方的简介,但这种方法非常受欢迎.有时称为Web容器.

HTTP Web服务器

•Servlet

•JavaServer Pages(JSP)

•表达语言(EL)

WebSocket

•JNDI

使用此设置时,您可以有选择地添加独立库,以便从各种Java EE技术中有选择地受益.例如,对于我自己使用Vaadin Framework构建Web应用程序的工作,我使用Java SE而不是EE,使用Tomcat,并手动添加Bean Validation实现库,因为这是我需要的Java EE技术列表.

完整的Java EE

需要以下技术:

•Web配置文件中的所有项目

•EJB 3.2(EJB实体bean和关联的EJBQL除外,它们都是可选的)

•JMS 2.0

•JavaMail 1.6

•连接器1.7

•WebServices 1.4

•并发实用程序1.0

•Batch1.0

•Java EE Management 1.1

•JACC 1.5

•JSP调试1.0

•Web服务元数据2.1

以下技术是可选的:

•EJB 3.2及更早版本的实体bean和关联的EJB QL

•JAX-RPC 1.1

•JAXR 1.0

•Java EE部署1.2

下面是一个显示嵌套需求组的图表.

Java SE 8所需的各种技术的嵌套组图,Web容器,Java EE 8 Web Profile,Java EE 8必需和Java EE 8可选

此图表上方的列表可能更准确; 此图未经过双重检查.

Java 11

请注意,Java 11会对这种情况带来变化.之前与Java SE捆绑在一起的一些类正在被删除.请参阅:JEP 320:删除Java EE和CORBA模块.

与Java EE密切相关的类正被重新定位到Jakarta.ee,它们更符合逻辑.

  • 亲爱的反对者,请在投票的同时留下批评。 (2认同)

Mar*_*tin 6

Java EE 6规范(JSR 316)包含以下列表:

完整的Java EE产品要求

需要以下技术:

  • EJB 3.1
  • Servlet 3.0
  • JSP 2.2
  • EL 2.2
  • JMS 1.1
  • JTA 1.1
  • JavaMail 1.4
  • 连接器1.6
  • 网络服务1.3
  • JAX-RPC 1.1
  • JAX-WS 2.2
  • JAX-RS 1.1
  • JAXB 2.2
  • JAXR 1.0
  • Java EE管理1.1
  • Java EE部署1.2
  • JACC 1.4
  • JASPIC 1.0
  • JSP调试1.0
  • JSTL 1.2
  • Web服务元数据2.1
  • JSF 2.0
  • 共同注释1.1
  • Java Persistence 2.0
  • Bean验证1.0
  • Managed Beans 1.0
  • Java EE 1.0的上下文和依赖注入
  • Java 1.0的依赖注入

没有可选技术.

Web配置文件定义

以下技术是Web Profile的必需组件:

  • Servlet 3.0
  • JavaServer Pages(JSP)2.2
  • 表达语言(EL)2.2
  • 调试对其他语言的支持(JSR-45)1.0
  • JavaServer Pages的标准标记库(JSTL)1.2
  • JavaServer Faces(JSF)2.0
  • Java平台的通用注释(JSR-250)1.1
  • Enterprise JavaBeans(EJB)3.1 Lite
  • Java Transaction API(JTA)1.1
  • Java Persistence API(JPA)2.0
  • Bean验证1.0
  • Managed Beans 1.0
  • 拦截器1.1
  • Java EE平台1.0的上下文和依赖注入
  • Java 1.06的依赖注入

Web配置文件中没有可选组件.

对于Java EE 7,有一个所有EE技术的列表,还显示了Web Profile中包含的内容.以前仅在完整配置文件中可用的某些技术现在包含在Web配置文件中,例如JAX-RS.