JEE MVC, il controller chiama l'interfaccia anziché l'implementazione dell'interfaccia

2

Sto seguendo questo tutorial: link Crea un'applicazione Web di base in Eclipse utilizzando il pattern MVC con Resin come web contenitore. Ecco la parte che non capisco.

Per il modello, crea un POJO, l'interfaccia e l'implementazione dell'interfaccia. I dati rappresentano un libro. Quando arriviamo al controller, crea un servlet semplice. Chiama l'interfaccia invece dell'implementazione dell'interfaccia. Come funziona l'interfaccia per eseguire la classe di implementazione? Inoltre, se esistessero due classi impl, in che modo l'interfaccia dovrebbe sapere quale chiamare?

    
posta Johnny_v 27.06.2015 - 22:47
fonte

1 risposta

1

Il controller ha una variabile che può avere un riferimento a qualsiasi oggetto del tipo di interfaccia. La classe di implementazione dell'interfaccia di cui parli implementa l'interfaccia, quindi è un tipo di tale interfaccia.

Ciò significa che la variabile può avere un riferimento a un oggetto di quella classe.

Questo tutorial utilizza CDI che è qualcosa chiamato framework di dipendenza dalla iniezione. Ciò consente di configurare i bean nell'applicazione che vengono automaticamente istanziati e assegnati alle proprietà (variabili come quella dell'interfaccia di tipo) per l'utilizzo da parte di altri bean. Sta creando l'oggetto della classe di implementazione dell'interfaccia e aggiungendolo al controller per te.

    
risposta data 27.06.2015 - 23:20
fonte

Leggi altre domande sui tag