Spring using Annotations

A simple spring sample using couple of annotations,

App.java

public class App {
	
	 public static void main(String[] args) {
	        
	        ApplicationContext applicationContext = new ClassPathXmlApplicationContext("spring_beans_annotations.xml");
	        Family family = applicationContext.getBean("family", Family.class);
	        family.printFooName();
	    }
}

Person.java

public class Person {
	private String name;
	private int age;

	public void setName(String name) {
		this.name = name;
	}
	
	public  String getName() {
		return name;
	}
	
	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}
	
	public void printHello() {
		System.out.println("Spring via annotations : Hello ! " +" My name is  "+ name +"and I am  "+age+" :)");
	}
}

Family.java

public class Family {
	private Person wife;

	@Autowired
	@Qualifier(value = "husband")
	private Person husband;

	public void printFooName() {
		System.out.println("The wife's name is "+wife.getName());
		System.out.println("The husband's name is "+husband.getName());
	}

	public Person getWife() {
		return wife;
	}

	public void setWife(Person wife) {
		this.wife = wife;
	}

	public Person getHusband() {
		return husband;
	}

	public void setHusband(Person husband) {
		this.husband = husband;
	}

}

spring_beans.xml

<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
    http://www.springframework.org/schema/context
    http://www.springframework.org/schema/context/spring-context-3.0.xsd">  
    
	<context:annotation-config />
	
	
	<bean id="wife" class="com.annotation.Person">
		<property name="name" value="Malavika" />
		<property name="age" value="25" />
	</bean>
	<bean id="husband" class="com.annotation.Person">
		<property name="name" value="Rajesh" />
		<property name="age" value="30" />
		<qualifier value="husband"></qualifier>
	</bean>
	
	<bean id="family" class="com.annotation.Family" >
		<property name="wife" ref="wife" />
		<qualifier value="husband"></qualifier>
	</bean>
</beans>

 

Leave a comment