RESTE - la restitution d'un Objet Créé avec Spring MVC

J'ai un RESTE d'appel qui accepte un objet JSON, disons, une personne. Après j'ai créer cette objet (validées et enregistrées dans la base de données), j'ai besoin de retourner le nouvellement créé Objet JSON.

Je pense que la norme est de retour 201 Accepted au lieu de retourner l'objet immédiatement. Mais mon application a besoin de l'objet nouvellement créé immédiatement.

J'ai un contrôleur de méthodes qui prend un POSTE d'appel, les appels à une classe de service, qui appelle à son tour un DAO qui utilise Hibernate pour créer l'objet. Une fois qu'il est enregistré dans la base de données, je vais appeler un autre contrôleur de méthode qui prend l'ID de la personne et renvoie l'Objet.

Ma question, est-ce la meilleure approche? C'est l'appel d'une autre méthode de Contrôleur pour obtenir l'objet nouvellement créé. Ou le POST d'appel lui-même devez retourner l'Objet.

La question principale est:
L'appel d'une autre méthode consiste à prendre un aller-retour et je suppose que c'est inutile. (Service->DAO->Hibernate->Base de données). Au lieu de cela je pense que je devrais obtenir l'Objet à partir de la base de données immédiatement après il est enregistré dans le même appel (à partir de la méthode qui s'occupait de la POSTE).

Qu'est-ce que l'architecture standard ici?

201 est "Créé". 202 est "Accepté".

OriginalL'auteur Kevin Rave | 2013-04-21