`
ihuashao
  • 浏览: 4725425 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

J2EE持久性:JBoss选择了JDO

阅读更多

J2EE应用中,数据层用什么技术?这是个争论已久的问题。Sun的资料中总是强调:“我们希望开发者使用Entity Bean管理数据的持久性问题。”但是很多人认为Entity Bean并不是一个好的解决方案,他们或许更喜欢JDO(Java Data Object)。当然,还有些人宁可使用第三方的O/R mapping框架(例如Hibernate)。持久化管理,这虽然不是我擅长的技术范围,不过看着别人吵架也是满好玩的 :)

前几天,JDO的拥护者们在TSS上跟人大吵了一架。现在他们找到有利于自己的证据了:JBoss选择了JDO作为数据层核心技术。如果此言不虚,JBoss将是第一个不使用EJB管理持久性的应用服务器。

————————————————————————

JBoss Chooses Java Data Objects

According to JDO Lead Craig Russell, "....the JBoss team discussed their strategy for persistence outside the EJB tier. After investigating all the persistence APIs currently available, they concluded that Java Data Objects would be the best interface for them to use."

If true, this would be the first time an appserver group acknowledged that persistence outside the EJB tier matters. It's not in an appserver vendor's interests to support JDO, because such a spec adds a lot of value to non-ejb development projects, reducing the value proposition for the EJB container. Perhaps JBoss' move, along with the new 'express' editions of Weblogic and Websphere will mean more attention for JDO from Sun and the big vendors.

Excerpt from the latest newsletter (which was emailed today) from JDOCentral.:

JBoss chooses Java Data Objects
by Craig Russell


Several months ago, Marc Fleury announced that JBoss would make their CMP implementation available to developers working on persistence solutions outside the server environment. With no details, rumors flew about what this actually meant for persistence and the open source community.

Today, almost no-one uses BMP any more as the power of CMP is proven and working. In other words, if the CMP2.0 engine's applicability goes beyond EJB alone, why couldn't we imagine a CMP engine working on abstract plain old java objects? We will look at making it the default service for persistence in JBoss. In fact I would argue that CMP2.0 is doing what JDO failed to do, providing a robust and framework-worthy persistence engine for Java (once generalized). While it was widely used in designs a year ago, JDO will probably go down in history as the proverbial chicken that crossed the road when the CMP2.0 truck came along. Marc Fleury, Why I Love EJBs.

But after looking at the alternatives, the JBoss team changed their tune. This week at JavaOne, the JBoss team discussed their strategy for persistence outside the EJB tier. After investigating all the persistence APIs currently available, they concluded that Java Data Objects would be the best interface for them to use.

According to Alexey Loubyansky, the author of JBossDO, At first, I planned to write our own framework for POJO persistence. I looked at Java Data Objects, Hibernate, OJB, a couple of others and decided to start with Java Data Objects. At least to have it as the base. And it is really a good spec. Thank you.

Dain Sundstrom, a committer of JBoss CMP, concurred that they plan to use their persistence abstraction engine, developed for CMP, to abstract user-visible APIs, starting with CMP for the server and Java Data Objects outside. This approach will allow them to support other APIs as customers demand.

The race is now on to be the first Java Data Objects standards-compliant open-source product. With JORM, TJDO, XORM, OJB, and now JBossDO in the running, this promises to be a very interesting competition that will greatly benefit the Java Data Objects community and Java developers all over the world.
分享到:
评论

相关推荐

    JBoss Application Server

    EJB 2.0 提供了会话bean、实体bean和消息驱动bean三种类型,以及容器管理持久性(CMP)和bean管理持久性(BMP)的选项。 2. **Java Message Service (JMS) 1.0.2b**:JMS允许应用程序通过消息传递进行异步通信,...

    J2EE程序员需掌握的技术

    2. **持久层框架**:Hibernate、JDO、Ibatis等框架处理数据库操作,通过ORM(对象关系映射)减少手动编写SQL的负担。EJB3 Entity Bean则提供了更高级的企业级服务,如事务管理和安全性。 3. **应用程序框架**:...

    注重开发J2EE应用遵循的关键问题

    总结来说,开发J2EE应用时,应结合实际业务需求,选择合适的架构和技术,充分考虑系统的可扩展性、性能、安全性和稳定性,利用框架和容器服务,注重解耦和模块化设计,以及持续优化和测试。同时,团队协作和文档管理...

    J2EE Programming

    J2EE应用服务器是运行应用程序的核心,如Tomcat、JBoss、WebLogic等。 4. **企业 Bean 层(Enterprise Bean Layer)**:包括三种类型的Bean:Session Beans(会话Bean)处理客户端请求,Entity Beans(实体Bean)...

    J2EE 学习安排表.doc

    在学习J2EE的过程中,一个详细的计划至关重要,可以帮助你系统地掌握各项技能。以下是对"J2EE学习安排表"的详细解读: 首先,基础阶段是学习任何技术的关键,对于J2EE而言,核心Java(Core Java)是第一步。你需要...

    java_程序员面试题经典集锦(精编)

    - **事务管理**:理解ACID属性(原子性、一致性、隔离性和持久性)和事务的隔离级别。 6. **EJB方面** - **EJB(Enterprise JavaBeans)**:为企业级应用提供组件模型,包括会话bean、实体bean和消息驱动bean。 ...

    JTangEJB二次开发手册

    - **JDO (Java Data Objects)**:Sun公司发布的一个数据持久化规范,类似于Hibernate等ORM框架提供的功能,但具有更简单的API和更少的配置需求。JDO的目标是提供一种简单易用的方式来处理Java对象与关系型数据库之间...

    25个好习惯帮你快速成为JAVA高手

    6. **Java数据库技术与ORM框架**:学习如何使用Java进行数据库操作,掌握至少一种持久化/ORM框架,如Hibernate,JDO,CocoBase,TopLink,iBatis等,同时理解对象关系映射的阻抗失配问题。 7. **Web开发技术**:...

    Java基础笔试题(绝对最全的)

    - JDO:Java Data Objects,一种持久化框架,提供对关系数据库的透明访问。 - XML:eXtensible Markup Language,用于存储和传输数据的标记语言,常用于配置文件和数据交换。 - EJB:Enterprise JavaBeans,企业级...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part2

     25.3.3 在JBoss上部署J2EE应用  25.4 小结 附录A 标准SQL语言的用法  A.1 数据完整性  A.1.1 实体完整性  A.1.2 域完整性  A.1.3 参照完整性  A.2 DDL数据定义语言  A.3 DML数据操纵语言  A.4 ...

    JAVA技术资料讲解

    5. **数据库技术**:学习SQL和至少一种持久化/ORM框架,如Hibernate、JDO、iBatis等,以及如何处理对象关系映射(ORM)的挑战。熟悉不同类型的数据库系统,如Oracle、MySQL和SQL Server。 6. **Web开发**:掌握...

    学习Java语言的30个参考,让你坐拥别人之上的30个擦考

    - **持久化技术**:学习JDO、TopLink等持久化解决方案。 ### 6. 多数据库支持 - **数据库兼容性**:熟悉Oracle、MySQL、SQL Server等主流数据库的特点和使用场景。 - **跨数据库开发**:了解如何编写可移植的代码,...

    java面试200题

    JDO是一种用于持久化数据的Java API,提供了一种比JDBC更高级别的抽象,使得数据操作更加简单和一致。JDO不仅支持关系型数据库,还支持对象数据库和其他数据存储方式,如XML和文件系统,从而提高了数据操作的灵活性...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part4

     25.3.3 在JBoss上部署J2EE应用  25.4 小结 附录A 标准SQL语言的用法  A.1 数据完整性  A.1.1 实体完整性  A.1.2 域完整性  A.1.3 参照完整性  A.2 DDL数据定义语言  A.3 DML数据操纵语言  A.4 ...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part3

     25.3.3 在JBoss上部署J2EE应用  25.4 小结 附录A 标准SQL语言的用法  A.1 数据完整性  A.1.1 实体完整性  A.1.2 域完整性  A.1.3 参照完整性  A.2 DDL数据定义语言  A.3 DML数据操纵语言  A.4 ...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part1.rar

     25.3.3 在JBoss上部署J2EE应用  25.4 小结 附录A 标准SQL语言的用法  A.1 数据完整性  A.1.1 实体完整性  A.1.2 域完整性  A.1.3 参照完整性  A.2 DDL数据定义语言  A.3 DML数据操纵语言  A.4 ...

    JAVA程序员您需要学习的25个标准

    1. **配置与管理**:熟悉WebLogic、JBoss等应用服务器的配置和管理,对于确保应用的稳定性和性能至关重要。 2. **高级特性**:如集群(Clustering)、连接池(Connection Pooling)、分布式事务处理等,这些特性可以帮助...

    Java程序员面试题.doc

    Java程序员面试题通常涵盖多个领域,包括基础语法、并发编程、Web开发、持久化技术、企业级应用和设计模式等。以下将详细解释这些领域的关键知识点。 **Java基础方面** 1. **访问修饰符**:Java有四种访问权限,即...

Global site tag (gtag.js) - Google Analytics