Alcance de las judías de primavera
IoC, y el bean All
las solicitudes solo devolverán la misma
instancia del bean
siempre que la identificación coincida con la instancia definida por el bean. Vale la pena enfatizar que el alcance singleton es el alcance predeterminado de Spring.
Alcance del prototipo: un bean con alcance de prototipo crea una nueva instancia del bean cada vez que se solicita el bean (ya sea inyectándolo en otro bean o llamando mediante programación al getBean del contenedor
() método). Como regla general, los beans con estado deben usar el alcance de prototipo, mientras que los beans sin estado deben usar el alcance singleton
.
Una cosa a tener en cuenta sobre los beans con ámbito de prototipo es que Spring no es responsable de todo el ciclo de vida del bean. Después de crear un Bean con alcance de prototipo, se entrega a la persona que llama
, quien es responsable de destruir el objeto y reclamar recursos.
En pocas palabras:
Singleton
Solo hay una instancia, este es el patrón singleton.
Acceso a prototipo para crear instancias, equivalente a nuevo.
Aplicación:
1. Las cosas que necesitan reciclar recursos importantes (conexiones de bases de datos, etc.) se configuran como singletons. Si se configuran como prototipos, los prototipos deben aplicarse para garantizar que. Los recursos se reciclan correctamente.
2. Los beans con estado configurados como singleton causarán problemas desconocidos; puede considerar configurarlos como prototipos.