Dans mon application Spring MVC, nous avons formulaire qui sont mis en correspondance avec les objets <form:form
dans JSP. Ces objets sont séparés de mes beans de modèle réguliers, et forment vraiment une sorte de modèle de vue . La difficulté avec ces objets est le mappage entre ces objets et les beans de modèle réels attendus par les objets de service. Actuellement, nous avons écrit manuellement le code de mappage des formulaires aux beans et vice versa dans les contrôleurs. Cette méthode est loin d'être optimale en raison de la quantité de code supplémentaire qu'elle requiert. Les autres options que nous avons envisagées sont les suivantes.
- Écrivez une classe de cartographie. Cela nécessite toujours d'écrire manuellement le code, mais au moins il n'est pas dans le contrôleur.
- Générer automatiquement la classe de mapping. Cela nécessiterait probablement de générer et de mettre à jour manuellement une sorte de fichier de mappage.
- Nommez les propriétés dans les beans et les formulaires de la même façon et utilisez la méthode de Spring.
BeanUtils.copyProperties
pour les déplacer d'avant en arrière. Cela semble mauvais parce que ce lien n'est pas évident et pourrait provoquer un comportement étrange à l'exécution s'il n'était pas maintenu cohérent. - Écrire l'objet du formulaire comme un façade qui conserve un haricot en interne et le met à jour.
Quelle est la meilleure méthode pour réaliser cette action pour la santé à long terme du projet ?