JPA - Java applications and databases, the easy way !!
Mapping the Java object world with the relational database world has never been a simple task.
JDBC is an powerful API, but it has so many classes and methods it is easy to make a coding mistake, especially if the database design changes. Every change in the physical data model requires a code analysis to ensure the JDBC code doesn't need fixing.
SQLJ is a more productive alternative, but it does require an extra translation step during development. We provide excellent SQLJ editing tools with IBM Rational Application Developer and DB2 Developer Workbench to make perform the translation for each SQLJ file. SQLJ applications gain a performance and security advantage when they are customized for DB2 as static SQL access plans come into play.
But, SQLJ doesn't solve the object/relational mapping issues.
Along comes Hibernate as an open source alternative and other proprietary alternatives like TopLink and others.
Entity EJBs worked, but they involved extra Java classes and "really" require tools to assist in the development and deployment tasks.
JPA is the EJB 3 persistence standard that is coming to life in 2007 with various implementations. JPA can be used with Java SE and Java EE environments and it will make and ideal Java interface for Informix Dynamic Server (IDS) and DB2. It's time to take a look at this new framework and see how it fits with your Java / database needs. A
n excellent book is Pro EJB 3: Java Persistence Architecture" by Mike Keith and Merrick Schincariol. It was an excellent read over the past week and I plan to try some experiments with OpenJPA and DB2 in the near future.