JPA (the Java Persistence API) sometimes does a little too much for its own good. Distinctions between managed and unmanaged entities or between save() and merge() are relevant when most objects stay in memory a long time, and are ‘synchronized’ with the database at different intervals during their lifetime.
In a Play! framework application, persistent data is rarely kept in memory for more than a single request. Hence an entity is going to be saved to the database almost after every time it is modfied. Because this is not the workflow JPA designers had in mind, sometimes JPA gets in the way.
One good way to start building a web application is to plan its HTTP interface - its URLs. This URL-centric design is an alternative to a data model-centric design that starts with the application’s data, or a UI-centric design that is based on how users will interact with the application’s user-interface. URL-centric design is a kind of API design.
Copyright © 2005-2012, Lunatech Research B.V. Tous droits réservés.