Inheritance Demo
File: context.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <bean id="parent" class="SimpleBean" abstract="true"> <property name="name" value="Name 1"/> </bean> <bean id="bean1" class="SimpleBean" parent="parent"> <property name="age" value="28"/> </bean> <bean id="bean2" class="SimpleBean" parent="parent"/> </beans> File: Main.java import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.Map; import java.util.regex.Matcher; import java.util.regex.Pattern; import org.springframework.beans.factory.xml.XmlBeanFactory; import org.springframework.core.io.ClassPathResource; import org.springframework.stereotype.Component; public class Main { public static void main(String[] args) throws Exception { XmlBeanFactory bf = new XmlBeanFactory(new ClassPathResource("context.xml")); System.out.println(bf.getBean("bean1")); System.out.println(bf.getBean("bean2")); } } class SimpleBean { private String name; private int age; public void setName(String name) { this.name = name; } public void setAge(int age) { this.age = age; } @Override public String toString() { final StringBuilder sb = new StringBuilder(); sb.append("SimpleBean"); sb.append("{name='").append(name).append('\''); sb.append(", age=").append(age); sb.append('}'); return sb.toString(); } }