JDO : Nondurable Identity

With nondurable identity your objects will not have a unique identity in the datastore. This type of identity is typically for log files, history files etc where you aren't going to access the object by key, but instead by a different parameter. In the datastore the table will typically not have a primary key. To specify that a class is to use nondurable identity with JDO you would add the following to the MetaData for the class.

<class name="MyClass" identity-type="nondurable">
...
</class>

or using annotations, for example

@PersistenceCapable(identityType=IdentityType.NONDURABLE)
public class MyClass
{
    ...
}

DataNucleus provides support for "nondurable" identity for some datastores only currently (RDBMS, Excel, ODF, MongoDB, HBase). What this means for something like RDBMS is that the table of the class will not have a primary-key.