wood burning stoves 2.0*
The moose likes Object Relational Mapping and the fly likes JDO question Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Databases » Object Relational Mapping
Bookmark "JDO question" Watch "JDO question" New topic

JDO question

Thomas Mcfarrow
Ranch Hand

Joined: Jul 09, 2001
Posts: 137
I am a hibernate newbie.. Whats the difference between JDO and hibernate?

[ October 13, 2004: Message edited by: Thomas Mcfarrow ]
Zeeshan Samdani

Joined: Oct 11, 2004
Posts: 8
There's a lot of interest in Java and object-database connectivity at the moment. The implementation you choose for your purpose would probably depend on your project and budget.

JDO is a Java standard and there are many JDO implementations available. This provides portability and customer security; if you need extra capabilities or features you can plug in a different implementation. Hibernate is open source and popular for simple projects, but is non-standard and lacks some of the OO query and performance features of JDO.

Zeeshan Samdani
Erik Bengtson
Ranch Hand

Joined: Dec 06, 2003
Posts: 90
JDO is designed to provide you database agnostic access to data. It means that with the same API you can access data stored in a file system, relational database, XML files, etc.

Hibernate is designed for object relational mapping.

JDO provides a query language similar to java and Hibernate has a query language more similar to SQL. Both query languages are good for their proposal, but JDOQL provides more datastore abstraction.

The way JDO was designed is one concrete advantage of it over Hibernate. Hibernate uses reflection and JDO uses a PersistenceCapable interface + StateManager. This permits JDO be more scalable and performant.

JDO has a lot of implementations with relational database support. In relation to Hibernate some may provide better performance, and some worse. To be sincere, I've never benchmark side by side both technologies.

I'm a developer of a JDO implementation, JPOX. It's open source and can be found at http://www.jpox.org

[ October 14, 2004: Message edited by: Erik Bengtson ]
kundan varma
Ranch Hand

Joined: Mar 08, 2004
Posts: 322
Hi Thomas Mcfarrow
I think ERik has given the best answer for your query. Even i suggest to go for JDO since it follow a standard and JPOX is a good implementation of JDO.

Failures are practice shoots for success.
Quentin Ng

Joined: May 22, 2003
Posts: 29
Hi All,

Sorry for disturb. I know little about JDO.
Is there any free JDO developer kit avaliable by Sun?
How is that compare with other JDO implementations?

Robin Roos

Joined: Nov 01, 2004
Posts: 15
Originally posted by Quentin Ng:
Sorry for disturb. I know little about JDO.
Is there any free JDO developer kit avaliable by Sun?
How is that compare with other JDO implementations?

Hi Quentin

How do you intend to use JDO? Sun has the JDO 1.0.1 RI but it doesn't address mapping to relational databases - it uses a file based storage system.

Most people learn JDO with a open source implementaton (e.g. JPOX) or an evaluation edition of a major commercial product (e.g. Kodo).

Kind regards, Robin.

Author of <a href="http://www.amazon.com/exec/obidos/ASIN/0321123808/ref=jranch-20" target="_blank" rel="nofollow">Java Data Objects</a>
Quentin Ng

Joined: May 22, 2003
Posts: 29
Thanks Robin.

In fact, I am using hibernate for our system right now.
I am comparing both technology to see which one has more benefit.
I agree. Here's the link: http://aspose.com/file-tools
subject: JDO question