Usando Servicios y DAOs en el controlador de mvc de primavera

Estoy creando una aplicación web que constituye principalmente operaciones de datos CRUD de back-end / base de datos. Hay casos en los que tengo que escribir lógica empresarial (estoy seguro de que tendremos más lógica empresarial integrada a medida que profundicemos en el desarrollo). Actualmente, para cada pantalla de UI que estoy creando, creo una clase modelo, una clase de servicio, una clase DAO, un controlador (esencialmente es un servlet) y un montón de páginas jsp. En la mayoría de los casos, la clase de servicio solo llama a los métodos de DAO para pasar objetos de modelo. Esencialmente, usamos clases modelo para mapear datos desde pantallas de UI. Por lo tanto, el controlador tendrá los objetos modelo rellenados cuando se envíe un formulario. Comencé a usar clases de servicio para mantener una capa de separación de la capa web a la capa DAO. Pero a veces siento que la clase de servicio simplemente agrega un nivel innecesario de llamadas a la API, creo que podría inyectar el DAO en el Controlador y completar la tarea más rápido. Quiero usar la clase de servicio solo cuando hay una lógica de negocios adicional a realizar. Si tiene que diseñar una aplicación, ¿qué factores considera utilizar controlador-> DAO vs controlador-> Servicio-> flujo de control DAO?

Respuestas a la pregunta(4)

Su respuesta a la pregunta