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>