La réponse est ici : http://www-128.ibm.com/developerworks/java/library/j-cb08156.html
Extrait :
Currently, persistence frameworks use one of two approaches: mapping or wrapping. Mapping solutions let you create independent database schemas and object models, and then use a layer of software to manage differences between the two. Mapping solutions seek to build an object model that closely resembles the structure of the database schema. In contrast, wrapping solutions use objects as wrappers around database tables and rows to manipulate data in a database. Conventional wisdom is that a mapping solution is often more flexible once the solution has been released into the wild because mapping software can better deal with changes in the schema or object model. But that wisdom ignores the most important part of the equation: data. To manage any application change involving a persistent domain model effectively, you must coordinate changes in the data, schema, and model. Most project teams don’t get it right.