:_basedir: 
:_imagesdir: images/
:notoc:
:notitle:
:grid: cols

[[index]]
image:images/JDOx100.png[float="left"]
image:images/jdo_text.png[float="right"]

'''''

== About Apache JDOanchor:About_Apache_JDO[]

Welcome to Apache JDO, a project of the http://db.apache.org/[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:

* PersistenceManager: the component responsible for the life cycle of
persistent instances, Query factory, and Transaction access
* Query: the component responsible for querying the datastore and
returning persistent instances or values
* Transaction: the component responsible for initiating and completing
transactions

JDO is being developed as a Java Specification Request in the Java
Community Process. The original JDO 1.0 is
http://www.jcp.org/en/jsr/detail?id=12[JSR-12] and the current JDO 3.1
is http://www.jcp.org/en/jsr/detail?id=243[JSR-243].

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 link:impls.html[Implementations].

== JDO Newsanchor:JDO_News[]

*JDO 3.1 is released* +

____
JDO 3.1 has been released. This release contains minor bug fixes. For a
complete list of changes (features plus bug fixes) see
https://issues.apache.org/jira/browse/JDO/fixforversion/12325878[JDO 3.1
changes]. You can download the release from the
link:downloads.html[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.1-rc1 is released* +

____
JDO 3.1-rc1 has been released. This release contains minor bug fixes.
For a complete list of changes (features plus bug fixes) see
https://issues.apache.org/jira/browse/JDO/fixforversion/12314921[JDO
3.1-rc1 changes]. You can download the release from the
link:downloads.html[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.1 is released* +

____
JDO 3.0.1 has been released. This release contains minor bug fixes. For
a complete list of changes (features plus bug fixes) see
https://issues.apache.org/jira/browse/JDO/fixforversion/12317950[JDO
3.0.1 changes]. You can download the release from the
link:downloads.html[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
https://issues.apache.org/jira/browse/JDO/fixforversion/12313404[JDO 3.0
changes]. You can download the release from the
link:downloads.html[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
link:downloads.html[downloads page]. The JDO 2.2 maintenance release
provides support for copyOnAttach control, dynamic fetch groups, level2
caching control via metadata. For details, see
http://jcp.org/aboutJava/communityprocess/maintenance/jsr243/243MR2.html[ChangeLog
for JSR-0243 JavaTM Data Objects 2.2]
____

*JDO 2.1.1 is released* +

____
JDO 2.1.1 is now available for download from the
link:downloads.html[downloads page]. This is a minor bug fix release.
____

*JDO 2.1 is released* +

____
JDO 2.1 is now available for download from the
link:downloads.html[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
http://jcp.org/aboutJava/communityprocess/maintenance/jsr243/243ChangeLog.html[Change
Log for JSR-000243 JavaTM Data Objects 2.0]
____

*JDO 2.0 has been approved by the JCP* +

____
JDO 2.0 is now available for download from the
link:downloads.html[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.

*Users!* +
We'd love to have you involved. Check out the
http://wiki.apache.org/jdo[Wiki]. Check out the
http://www.jcp.org/en/jsr/detail?id=243[Specification], which has been
approved. link:./get-involved.html[Get Involved]!

_Archived articles are link:newshistory.html[here]_.

