When to Use JDO with Java Application Servers
If the data in your database is complex or the mapping from the relational model to the Java object model is complex, it is best to use JDO with Java application servers instead of JDBC or SQLJ. This would mean that the mapping can be placed in one location outside of your application or application server as opposed to mapping data in multiple locations. See JDBC Data Conversion and SQLJ Data Conversion. Having to map data in only one location simplifies both development and maintenance.
If you have new data and do not have an existing database that requires data mapping, take a look at EJB accelerators.
For more information on JDO issues related to data mapping, see JDO Data Conversion.
Also, if you are not familiar with the concept of complex data, see complex data.
More on the general topic: Using JDO with Application Servers