2

Beans en Spring

¿Qué es un bean?
La wikipedia define bean como un componente de software que tiene la particularidad de ser reutilizable.

En java cumplen varios criterios:

  • Implementación en serie.
  • Tener todos sus atributos privados (private).
  • Tener métodos set() y get() públicos de los atributos privados que nos interese.
  • Tener un constructor público por defecto.
public class PersonaBean  
  implements java.io.Serializable {
   
   private String nombre;
   private int edad;

   public PersonaBean() {
      // Constructor sin argumentos
   }

   // Constructor del JavaBean
   public PersonaBean(String nombre, int edad) {
      this.nombre = nombre;
      this.edad = edad;
   }

   // Constructor por copia
   public PersonaBean(PersonaBean personaBean) {
      this.nombre = personaBean.getNombre();
      this.edad = personaBean.getEdad();
   }

   public void setNombre(String n) {
     this.nombre = n;
   }

   public void setEdad(int e) {
     this.edad = e;
   }

   public String getNombre() { 
    return (this.nombre);
   }

   public int getEdad() { 
    return (this.edad); 
   }
 }```


**Beans en Spring**
A diferencia de los bean convencionales que representan una clase, la particularidad de los beans de Spring es que son objetos creados y manejados por el contenedor Spring.

**El contenedor de beans de Spring**

El contenedor se encuentra en el núcleo del marco de trabajo de Spring y utiliza inyecciónde dependencias para gestionar los componentes que forman la aplicación. Se encarga de varias tareas, como crear, conectar y alojar los objetos definidos por los beans. Además hace de dispensador proporcionando beans por peticion. El contenedor carga las definiciones de beans escritas en archivos XML estructurados deforma ordenada.

Tipos de contenedor de Spring:

**Fabrica de beans (bean factory):** contenedor sencillo con soporte básico de inyeccion de dependencias.**Contexto de aplicacion (aplication context):** es una implementacion de la bean factory que proporciona opciones avanzadas como por ejemplo: medios para resolver mensajes de texto e internalizacion, publicación de beans registrados como receptores o formas genéricas de abrir recursos de archivo.**Curso de vida de la bean en Spring**
Otra diferencia de los beans de Spring es que a éstos se añade un ciclo nuevo para quela bean sepa cual es su contexto de aplicación. Podemos ordenar las fases dela vida de un bean dela siguiente forma:
    
1. Instanciación
2. Inyecciónde las propiedades
3. Nombre del bean
4. Nombre dela fábrica
5. Postprocesado (pre inicializacion)
6. Inicialización
7. Postprocesado (post inicialización)
8. Bean listo para uso
9. Destrucción**Formas de crear un bean en Spring**

    
- Bean simples: sin atributos
    
- Bean con inyección por constructor: pasando los atributos por constructor
    
- Bean con referencias de objeto de constructores: cuando pasamos un bean como atributo del constructor de otro.
    
- Bean con inyecciónde propiedades: cuando en vez del método constructor utilizamos setters de atributos.

        Con valores simples: Enteros, reales, Cadenas…
        Con valores complejos:

            Por referencia de otro objeto: pasando un bean id al método set.
            Colecciones de datos: listas, arrays, maps…
        Con valor nulo: cuando necesitamos pasar un valor nulo.
Escribe tu comentario
+ 2
2

Hi everyone if you are like the online emerges then you are try the one time play and you have share our experience play online bejeweled 3 connect try the more option and more user are apply thy more function.