2012-03-16 20 views
10

Sto imparando Spring e il termine "Spring Container" compare spesso nel testo. Tuttavia, so che "contenitore" non è usato solo in primavera (contenitore EJB, ecc.) Quindi cosa significa quando viene usato nel contesto della programmazione?Cosa significa "Contenitore" nel contesto della programmazione?

+0

Che cosa si intende per 'So "contenitore" non è usato solo in Spring'? Non userebbero il termine 'contenitore 'se ti non fosse il caso. –

+0

Si dovrebbe chiedere nella sezione programmazione –

+0

Capisci ora? – LuckyLuke

risposta

16

Il contenitore è qualcosa che contiene qualcos'altro.

  • In : Spring contenitore contiene fagioli (oggetti Java che sono soggette a ) contenitori

  • servlet contengono servlet, filtri, ecc ascoltatori, e gestisce il loro stato e del ciclo di vita. Ci sono anche simili contenitori

  • contenitori EJB contengono bean (stateless, stateful, message-driven) e, come sopra, gestire la loro messa in comune e ciclo di vita

  • java.awt.Container "è un componente che può contenere altri componenti AWT "

Come si può vedere il ruolo del contenitore è quello di possedere e gestire un set di oggetti in modo da non dover istanziarli direttamente.

+3

Penso che la tua risposta sarebbe accettabile se hai lasciato solo la prima frase. ;) – aviad

+0

No, non lo farebbe. Sono con l'OP, il termine contenitore è un termine così caricato nel software e se è così generico non dovrebbe essere usato. Gli atomi sono contenitori secondo la prima frase. Contengono protoni ed elettroni ma a chi importa? E a chi importa che una scatola 2D in un diagramma contenga uno spazio vuoto? Ci deve essere dell'altro. Cosa facciamo con i contenuti? Perché vogliamo metterli in un contenitore? per esempio. "contiene qualcosa a cui potresti avere bisogno di accesso globale nella tua base di codice per invocare la logica dipendente"? –

+1

Questa è la chiave: "per possedere e gestire un insieme di oggetti in modo da non dover istanziarli direttamente." –

1

Quello che chiedi è un po 'oscuro per me. Immagino che tu stia chiedendo cosa fanno i "contenitori" in generale.

La mia comprensione è che container è un pool che gestisce una serie di oggetti/bean. Ad esempio c'è il contenitore web TOMCAT, il contenitore generale IoC in primavera, o anche il pool di thread ha anche somiglianze. Il contenitore tratta principalmente tutto il business di ciò che contiene, come il ciclo di vita, la dipendenza tra ogni oggetto. E quello che dobbiamo fare è solo generare un oggetto e metterlo in un contenitore, e prenderlo quando è necessario.

Il desiderio che ti sarà di aiuto.

1
A Web application runs within a Web container of a Web server.The Web container 
provides the runtime environment through components that provide naming context 
and life cycle management. 

Es. Il contenitore in caso di java è l'ambiente di runtime e l'implementazione dell'API fornita da java.
Come
1. servlet container è responsabile per la gestione del ciclo di vita del servlet ..

Problemi correlati