Welcome to Apache JDO, a project of the Apache DB project. Our goal is a thriving community of users and developers of object persistence technology.
Java Data Objects (JDO) is a standard way to access persistent data in databases, using plain old Java objects (POJO) to represent persistent data. The approach separates data manipulation (done by accessing Java data members in the Java domain objects) from database manipulation (done by calling the JDO interface methods). This separation of concerns leads to a high degree of independence of the Java view of data from the database view of the data.
Interfaces are defined for the user's view of persistence:
The Apache JDO project is focused on building the JDO API and the TCK for compatibility testing of JDO implementations. Commercial and open source implementations of JDO are available for relational databases, object databases, and file systems. If you need an implementation for building a JDO application, see Implementations.
JDO 3.0.1 has been released. This release contains minor bug fixes. For a complete list of changes (features plus bug fixes) see JDO 3.0.1 changes. You can download the release from the downloads page. You can also use the new release in maven projects simply by referencing the jdo-api artifact in your pom.xml.JDO 3.0 is released
JDO 3.0 has been released. This release contains significant new features for better support of tooling and runtime: enhancer API, dynamic class and metadata generation, locking, database timeouts, query cancel, and exact object ids. For a complete list of changes (features plus bug fixes) see JDO 3.0 changes. You can download the release from the downloads page. You can also use the new release in maven projects simply by referencing the jdo-api artifact in your pom.xml.JDO 2.2 is released
JDO 2.2 is now available for download from the downloads page. The JDO 2.2 maintenance release provides support for copyOnAttach control, dynamic fetch groups, level2 caching control via metadata. For details, see ChangeLog for JSR-0243 JavaTM Data Objects 2.2JDO 2.1.1 is released
JDO 2.1.1 is now available for download from the downloads page. This is a minor bug fix release.JDO 2.1 is released
JDO 2.1 is now available for download from the downloads page. The JDO 2.1 maintenance release provides support for JDK 1.5 features,including the use of annotations as a means of specifying mapping. It also includes many corrections and minor changes. For details, see Change Log for JSR-000243 JavaTM Data Objects 2.0 (2007-08-02)JDO 2.0 has been approved by the JCP
JDO 2.0 is now available for download from the downloads page. JDO 2.0 builds on JDO 1 and includes many features requested by users:
- Standard mapping from objects to relational databases
- Multi-tier support without use of Data Transfer Objects
- Improved query support including projections and aggregates
- Stored queries in metadata
- Deletion by query
- Optimized fetching of object graphs without writing special queries
- Extensive List and Map support
- Lazy loading of large collections
- Improved support for single-field primary keys
- Object lifecycle event monitoring
- Improved support for bidirectional relationships
Java Community Process!
JDO is being developed under the Java Community Process. The Apache JDO project is developing the API and the Technology Compatibility Kit for the JDO standard. (2005-07-13)
Archived articles are here.