Originariamente inviato da DonFrignolo
Una seplice architettura fatta in casa che rispetta l'MVC potrebbe essere:
Hai diversi tipi di classi e oggetti:
Servlet
Handler: Classi che raccolgono le richieste http e restituiscono una particolare response
Manager: Classi che si occupano principalmente della persistenza dei dati
Bean: JavaBean classici (get e set a profusione)
jsp: che raccolgono le response dagli handler e gestiscono la visualizzazione del risultato.
Crei una servlet che filtra le rischieste http e le indirizza all'Handler giusto per quel tipo di richiesta (consiglio di usare la reflection e di una interfaccia che iplementano tutti gli handler), una volta che ha finito i suoi processi la servlet rigira la risposta ad una jsp (che puoi definirgli nell'handler)
L'handler raccoglie la richiesta http , elabora i dati e fa eseguire le operazioni sul db ai manager, genera la risposta e indica a quale jsp indirizzarla.
Il manager prende i dati elaborati dall'handler e persiste sul db in genere ritorna il bean richiesto dall'handler in caso di select...Oppure esegue le operazioni classiche insert,update,delete ecc.
In genere questa architettura comporta un handler un manager e un bean per ogni entità del database, al massimo puoi risparmiare qualche handler nel caso tu debba solamente effettuare delle operazioni macro.