Bean
Un Bean es un objeto de Java que es manejado usualmente por un Framework que cuenta con un contenedor para utilizar la notes/Inyeccion de Dependencias, de esta forma, logras desacoplarte tanto de la creacion como del tipo especifico de tu colaborador.
En Spring Framework, son bastante utilizados, forman toda la configuracion y cosas extra que se necesitan en la aplicacion. Ayudan a que esta sea mas eficiente.
# Creacion de un Bean
Para crear un Bean personalizado, basta con definir un metodo en cualquier clase que este marcada con la anotacion @Configuration, el retorno de este metodo sera el nuevo Bean que sera manejado por el contenedor de Spring.
| |
A estos beans les podemos asignar un Scope personalizado, de modo que este se pueda comportar de forma personalizada en la aplicacion.
# Ambiguedad en Beans
Si existen dos Beans exactamente iguales estos seran igualmente agregados al contenedor de Spring, sin embargo, al tratar de ser utilizado uno u otro por otro componente de la aplicaicon, este correra ante un problema de ambiguedad y se obtendra una excepcion.
Para evitar ambiguedad, se puede utilizar la anotacion @Qualifier seguida del nombre especifico del bean que se quiere utilizar para que este sepa asi, elegir un bean especifico en caso de existir ambiguedad.
| |