Paso de referencias al bean

0

Por admin | Para la categoría de spring | noticia del 07-07-2010

A la hora de declarar beans con spring podemos establecer una jerarquía de beans para lo cual necesitamos

pasar en los atributos de las declaraciones las referencias a otros bean

Interface actividades

1
2
3
4
5
6
7
package tercerejemplo;
 
public interface Actividades {
 
	public abstract void actividad();
 
}

Clase Caminar

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package tercerejemplo;
 
 
public class Caminar implements Actividades 
{
	private String mensaje;
 
	public Caminar(String mensaje)
	{
		this.mensaje = mensaje;
	}
 
	public void actividad ()
	{
		System.out.println(mensaje);
	}
 
 
}

Clase Hablar

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
package tercerejemplo;
 
 
public class Hablar implements Actividades
{
   private String palabras;
 
 
   public Hablar(String palabras)
   {
	   this.palabras = palabras;
   }
 
   public void actividad()
   {
	   System.out.println(this.palabras);
   }
}

Clase Medico

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package tercerejemplo;
 
import java.util.Collection;
 
 
public class Medico extends Persona
{
 
	private Collection <Actividades> actividades;
	private String especialidad;
 
 
	public Medico (String nombreMedico)
	{
		super(nombreMedico);
	}
 
	public void setEspecialidad ( String especialidad)
	{
		this.especialidad = especialidad;
	}
 
	public void setActividades(Collection<Actividades> actividades)
	{
		this.actividades = actividades;
	}
 
	public void datos ()
	{
		System.out.println(this.nombre);
		System.out.println(this.especialidad);
		this.mostrarActividades();
	}
 
	public void mostrarActividades ()
	{
		for ( Actividades actividad : this.actividades  )
		{
			super.setActividad(actividad);
			super.actividades();
		}
	}
 
 
}

Clase persona

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package tercerejemplo;
 
 
public class Persona {
 
	Actividades actividad;
	String nombre;
 
	public Persona ()
	{
 
	}
 
	public Persona(String nombre)
	{ 
	   this.nombre = nombre;
	}
 
	public void setActividad(Actividades actividad)
	{
	   this.actividad = actividad;	
	}
 
	public void actividades ()
	{   
 
		actividad.actividad();
	}
 
}

Clase principal PersonaApp

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
package tercerejemplo;
 
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
 
import org.springframework.core.io.Resource;
import org.springframework.core.io.ClassPathResource;
 
 
public class PersonaApp {
 
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
 
 
		Resource recurso = new ClassPathResource("Medico.xml");
 
		BeanFactory factoria = new XmlBeanFactory(recurso);
 
		Medico persona = (Medico) factoria.getBean("medico");
 
 
		persona.datos();
 
 
	}
 
}

Comentarios cerrados automáticamente al pasar más de un año