EJB规范和Java版本 – 向后兼容性

这是我对EJB规范和 Java版本之间关系的理解

> EJB 2.0是J2EE 1.3平台的一部分,它位于J2SE 1.3之上
或JDK 1.3.x.
> EJB 2.1是J2EE 1.4平台的一部分,它位于J2SE 1.4或JDK 1.4.x之上

EJB 2.1规范要求EJB 2.0具有向后兼容性,因此支持EJB 2.1并在JDK 1.4.x中运行的容器也能够运行EJB 2.0 bean.

> EJB 3.0是Java EE 5平台的一部分,它需要Java SE 5(JDK 5)进行注释等

EJB 3规范要求对早期版本的规范进行向后兼容.

我的问题是这个.如果我升级用于实现EJB 2.0 bean的java代码以针对更高版本的Java(比如Java 5)进行编译,我是否仍然可以保留相同版本的EJB规范,或者我是否也需要迁移它.

您甚至不必“升级”Java代码,因为我认为旧代码只能在源代码级别由于与新引入的关键字冲突的标识符而不兼容,但这在字节码级别不是问题.

因此,您的旧Java 1.3 / EJB 2.0 EAR应该仍然在Java 5 / EJB 3应用程序服务器上保持不变,您甚至可以在代码中进行错误修正,并在现代JDK上使用-target 1.3进行编译,而无需修复碰撞标识符(当然你也不能使用新的源级功能).

相关文章
相关标签/搜索