4. Conclusión
Recordemos lo que queríamos hacer. Queríamos construir la siguiente aplicación web de tres capas MVC:
![]() |
- El modelo ya estaba listo. Se utilizó de la misma manera en las tres soluciones propuestas
- Dado que se respetó escrupulosamente la independencia de las capas, la capa [web] pudo implementarse de tres maneras diferentes sin alterar el modelo. Solo trabajamos en la capa [web].
- Las soluciones son similares. Mientras que en la primera solución contábamos con un único servlet con un método por cada acción a procesar, en las otras dos soluciones también tenemos un único servlet, pero sin los métodos de procesamiento de acciones, ya que este procesamiento ahora lo realizan clases separadas. La función de estas clases era idéntica a la de los métodos de la primera solución.
- El uso de [Spring] en esta aplicación nos permite elegir las clases de implementación de las interfaces Java de las capas [domain] y [dao]. Estas clases de implementación podrían modificarse en una capa, sin ningún impacto en las demás capas. Solo habría que modificar el archivo de configuración de Spring. De este modo, la capa [dao], que aquí está a cargo de la herramienta [sqlMap], podría estar a cargo de la herramienta [Hibernate]. Esto afectaría a la capa [dao], pero en absoluto a las capas [web] y [domain].
