实际上EJB3规范我05年就略微了解了一些。
9月3号,广州IBM组织了技术沙龙,专题介绍EJB3,JPA的技术特点。这几年由于对 Hibernate,Spring 应用经验增加,当时对EJB3 的一些疑惑和不感冒,现在更加明确了。
沙龙上主要针对Hibernate 介绍了 EJB 3的 JPA, 针对Spring 介绍了 EJB 3 的容器特性,感觉IBM有贬低 Hibernate, Spring,力推EJB 3的气势,大概是为 WAS7的推广做准备吧,呵呵。
一些明显的点就是 EJB 3为了轻量化,避免 EJB 1, EJB 2当年设计缺陷的后尘,采用了许多 Spring IOC的思想; 为了实体bean, 而又采用了 Hibernate 的许多思想,只是适当的引入了 annotation 等技术。似乎有些偷窃概念和技术,而又贬低前人的意味,这一点让人感觉很不好。
另外一点,运用 annotation 进行映射,服务发布,注入等, 着实感觉不是一个好的方案,这就是我3年前的感觉。 虽然说不一定完全用 annotation 开发,但IBM将这个未经实践检验的开发模式作为一个开发推荐规范介绍给我们客户,, 有点类似当年极力推 EJB 2的感觉。 annotation 是JDK1.5开始的一个语言级的好特性,但不能滥用。特别是在 ORM 映射,将bean发布为服务等,直接在method上写 annotation,就是一种 hard coding,通俗说就是写死的做法,如:将实体的表名写死,将属性对应的库表column写死,将发布的web service 的地址写死等, 失去了 ORM 映射配置的灵活性.
@Entity
@Table(name = "STUDENT")
public class Student implements Serializable {
.....
}
@ManyToOne
@JoinColumn(name = "student_id")
public Student getStudent() {
return student;
}
实践才是最好的选择器,就像Hibernate ,Spring 成为事实上的企业级开发标准一样。 所以我们对 IBM,Oracle 的新品宣传,新规范介绍, 还要多留个心眼,有自己的思考,不能死板的照单全收。
分享到:
相关推荐
3. **配置部署描述符**:虽然EJB 3.0允许省略大部分XML配置,但在某些情况下,可能仍需要编辑`ejb-jar.xml`来定制部署行为。 4. **测试和调试**:利用RAD内置的调试器对EJB进行单元测试和集成测试,确保其功能正确...
EJB2和EJB3是EJB技术的两个主要版本,它们在架构上存在显著差异,尤其是在编程模型的简化、依赖注入(DI)和对象创建方式等方面。 EJB2的编程模型相对复杂,一个EJB通常需要两个接口(业务接口和远程接口)以及一个...
EJB3是EJB规范的一个重要版本,它在EJB2的基础上进行了重大改进,极大地简化了开发流程,降低了对开发者的要求。"ejb3 带源码"的资源,如"Mastering EJB3"和"Beginning EJB3 Application Development"等,提供了深入...
虽然EJB 3是Java EE标准的一部分,但开发者需要了解如何确保应用可以在不同的Java EE容器和应用服务器上运行。这涉及到容器相关的配置、兼容性和最佳实践的讨论。互操作性部分则关注于EJB与不同技术(如Web Services...
在EJB3中,SessionBean变得更加轻量级,不再需要XML配置,而是通过注解实现。你可以学习如何定义SessionBean接口、实现类,并使用`@Stateless`或`@Stateful`注解来指定其状态行为。 **二、EntityBean** EntityBean...
EJB3应用通常部署在Java EE应用服务器上,如Glassfish、WildFly或WebLogic等。开发者需要创建一个包含所有必需bean和元数据的ejb-jar文件,并将其打包进war或ear文件中。 ### 10. 持续集成与测试 EJB3支持单元测试...
EJB3的三本好书之三,也很不错的一本ejb3的书籍,是英文版,附带源代码,这本书的好处是与Mastering EJB 3ed有一定的继承性,可以对比来看. 3本书的地址 1. Beginning EJB3 Application Development From Novice to ...
总结,ejb3进阶案例涵盖了ejb3的核心组件,通过实践可以在理解ejb3特性的基础上,提升在JBoss 5上的应用开发和部署能力。通过深入学习和实践这些案例,开发者能够更好地掌握ejb3的精髓,从而构建出高效、稳定的企业...
通过这个"JBOSS7+EJB3"实例,我们可以深入了解EJB3如何在实际环境中运行,以及如何在JBOSS7这样的应用服务器上部署和管理EJB服务。这不仅有助于提升开发者对EJB3的理解,也有助于在实际项目中更高效地利用EJB3来构建...
1. **注解驱动(Annotation-based)**:在EJB3中,开发者可以使用注解来声明组件的角色、生命周期方法和持久化属性,如`@Entity`、`@Stateless`、`@Stateful`、`@SessionBean`等,大大减少了XML配置文件的使用。...
在本文档中,我们探讨了如何在IBM WebSphere应用服务器上部署EJB 3应用程序。WebSphere是IBM提供的一款强大的Java应用服务器,它支持Java EE(Enterprise JavaBeans)规范,包括EJB 3。以下是详细的步骤和知识点: ...
EJB3的持久化标准很大程度上受到了Hibernate的影响,并且在某些情况下,EJB3的持久化可以与Hibernate共存或互换。Hibernate提供了更丰富的功能,如二级缓存、事件监听和自定义类型,对于需要更强大ORM功能的开发者来...
EJB3是EJB规范的一个重要版本,它在EJB2的基础上进行了许多简化和改进,使得开发更加高效且易于理解。本文将深入探讨EJB3中的Entity Bean,它是EJB3中的持久化组件,用于代表数据库中的实体。 1. **实体Bean的概念*...
EJB3支持JSR 330标准的依赖注入,通过`@Inject`注解可以在bean之间注入依赖,简化了组件间的协作。 6. **容器管理事务(Container Managed Transactions, CMT)** EJB容器自动管理事务的开始、提交、回滚,开发者...
在JBoss 6这样的应用服务器上整合Struts2和EJB3时,可能会遇到一些挑战。首先,Struts2在JBoss 6中可能出现部署问题,这主要是因为JBoss 6引入了新的Jar文件前缀“vfs”,而Struts2的Xwork组件对此不兼容。Xwork是...
【 ejb3_structs 】是一个关于企业级...这个项目对于学习EJB3和Struts的集成,以及理解企业级Java应用开发有很好的实践价值。通过深入研究源码,可以更好地掌握这两者之间的协作方式,从而提升在实际开发中的能力。
EJB3是EJB规范的一个重要版本,它在EJB2的基础上进行了重大改进,引入了许多简化开发的新特性,使得EJB更加易用且高效。这个压缩包文件"**EJB3 入门经典 源码**"很可能是为了帮助初学者理解并学习EJB3的基本概念、...
EJB3是EJB规范的一个重要版本,它在EJB2的基础上进行了许多简化和改进,使得开发更加高效且易于理解。在这个实例练习中,我们将探讨EJB3的基本概念、特性以及如何创建和运行一个简单的EJB3应用。 1. EJB3概述 EJB3...
EJB3的三本好书第二本,最好的介绍ejb3的书,看过之后,其他的书都送人了,而且附带的源代码,几乎包括了所有的主流应用服务器的例子,glassfish, jboss, weblogic, oracleAS 3本书分别是: 1. Beginning EJB3 ...
EJB3是EJB规范的一个重要版本,它在EJB2的基础上进行了重大改进,极大地简化了开发流程,降低了学习曲线,提升了开发效率。 在"EJB3实战的源代码"这个资源中,我们可以深入学习和理解EJB3的各种特性。EJB3引入了...