JPOX
JPOX
 Project  |  Ver 1.1  |  Ver 1.2  |  JDO  |  JPA  |  Guides  |  Tools
1.2 | Persistence | JDO ORM | JPA ORM | Runtime | JDO Runtime | JPA Runtime | Extensions | Developer
JPOX 1.2
Plugins
JPOX : What's New in 1.2

Java Persistent Objects (JPOX) version 1.2 takes the JDO1/JDO2 compliance of JPOX 1.1 and moves it forward complying with the JPA1, JDO2.1 specifications. This page defines the main changes that you will see in JPOX 1.2 and how you can adapt your application to take advantage of the new features.

  • JPA1 : Support for EntityManagerFactory and EntityManager to provide JPA persistence
  • JPA1 : Support for JPA1 MetaData
  • JPA1 : Upgraded support for JPA1 annotations
  • JPA1 : Support for JPA1 Event Listeners
  • JPA1 : Support for JPA1 Versioning of entities
  • JPA1 : Added support for persistence of "ordered Lists" (used in JPA where the indices of the elements is not persisted and instead you retrieve the elements in a particular order).
  • JPA1 : Support for JPQL
  • JPA1/JDO2.1 : Support for "persistence.xml". This is used by JPA1 to specify the classes and mapping files for a part of an applications persistence, to group common data objects.
  • JDO 2.1 : Complete support for JDO annotations. Please check the documentation for which annotations have changed since JPOX 1.1
  • JDO 2.1 : Support for JDK1.5 generics with JDO2. No longer necessary to specify the collection element-type or map key-type/value-type if the field is specified using generics.
  • JDO 2.1 : Added support for PMF.getServerTimeZoneID(), PMF.setServerTimeZoneID(), PM.getServerDate()
  • JDO 2.1 : Support for named Persistence Manager Factories
  • JDO 2.1 : Support for CopyOnAttach allowing yet more transparent persistence.
  • JDO 2.1 : Support for using JPA1 annotations/XML and using JDO persistence.
  • JDO 2.1 : Support for JDOQL Subqueries
  • Ability to use both MetaData and Annotations in mixed-mode. In fact if using JDO persistence you can now have JDO MetaData, ORM MetaData and Annotations for the same class if you so wish.
  • Ability to turn off "persistence-by-reachability" and "update-by-reachability" on a per-field basis for JDO (by default objects are persisted/update by reachability when calling makePersistent() whereas in JPA they are not).
  • Ability to turn on "refresh-by-reachability" on a per-field basis for JDO (JDO doesnt allow for refreshing related objects when calling refresh() whereas in JPA it can be done).
  • Initial support for persisting to DB4O All basic persistence operations are supported when used with local transactions. Extents are supported. Basic JDOQL support is included.
  • Complete rewrite of the Spatial plugin with support for multiple geometry libraries. All spatial functions defined in the OGC Simple Feature specification are supported. Oracle, MySQL or PostgreSQL (with PostGIS extension) can be used as datastore.
  • Ability to use JPQL query language from JDO persistence
  • Added JPOX Enhancer mode using ASM instead of BCEL giving up to 3 times speed up in enhancement process!
  • Integrated SQLController allowing improved statement batching.
  • Ability to issue INSERT/UPDATE/DELETE statements using the JDO2 SQL query API.
  • Ability to use "numbered" and "named" parameters with SQL queries.
  • JDO : Support Non-Transactional writes.
  • JDO : Support "non-durable" identity for persists and reads.
  • JDO : Support of "unmapped" columns in schema creation and object insert.
  • Rewrite of optimistic transaction handling.
  • Support for persistent properties. This means that if you have Java Bean-style setXXX, getXXX methods then you can persist that property rather than the field.
  • Support for complete-table inheritance under JPA (TABLE_PER_CLASS), and as an extension under JDO.
  • JDO : Support for using "ordered lists" in JDO using a JPOX extension.
  • JDO : Support for using versioning via an existing field in JDO using a JPOX extension.
  • JDO/JPA : enhanced management of bidirectional relations
  • JPA : allow "compound identity" relations using JPA annotations/XML using a JPOX extension.
  • JDO : Support for Dynamic Fetch Groups using a JPOX extension