Inheritance in Spring
Inheritance Demo, In the example given below we are going to tell about the inheritance in the Spring framework. By inheritance we mean a way of forming new classes using classes that have already been defined. Here we have created a simple bean and used this bean as a template for creating other beans.
parent” class=”mybean” >:-Creates a Parent bean which would be used as a template for creating other beans. Here “mybean“ is the name of the bean class which would be referred in the xml file with the id “parent“.
mybean” parent=”parent”>:-Creates a child bean which would be inheriting from the parent bean defined above.
parent=”parent”:-Specify that this bean is inheriting the properties of some other bean.
| <property name=”name” value=”Roseindia.net”/> </bean> mybean” parent=”parent”> </bean> |
context.xml
<?xml version="1.0" encoding="UTF-8"?> <bean id=“parent” class=“mybean” ><property name=“name” value=“Roseindia.net”/> </bean> <bean id=“child” class=“mybean” parent=“parent”> <property name=“address” value=“Rohini”/> </bean> <bean id=“subchild” class=“mybean” parent=“parent”/> </beans> |
Main.java
This is the file through which we are retrieving the property of the bean defined above. Some of the methods which are used here are as follows:-
XmlBeanFactory factory = new XmlBeanFactory(new ClassPathResource(“context.xml”)):-This method creates an instance of the XmlBeanFactory which is used to read bean definition from an XML document
new ClassPathResource(“context.xml”):-Creates a new ClassPathResource for ClassLoader .Here the context.xml is the file which is to be loaded.
(bf.getBean(“child”)):-This method returns an instance of the bean named “child”, which is shared or independent, of the given bean name.
(bf.getBean(“subchild”)):-This method returns an instance of the bean named “subchild“, which is shared or independent, of the given bean name.
stringBuilder.append(“Bean”):-This is the method of the class string Builder which appends the specified string to this character sequence.
import org.springframework.beans.factory.xml.XmlBeanFactory; import org.springframework.core.io.ClassPathResource; public class Main { public static void main(String[] args) throws Exception { XmlBeanFactory bf = new XmlBeanFactory(new ClassPathResource("context.xml")); System.out.println("===============Inheritance demo================="); System.out.println(bf.getBean("child")); System.out.println(bf.getBean("subchild")); } } class mybean { private String name; private String address; public void setName(String name) { this.name = name; } public void setAddress(String address) { this.address = address; } @Override public String toString() { final StringBuilder stringBuilder = new StringBuilder(); stringBuilder.append("Bean"); stringBuilder.append("{name='").append(name).append('''); stringBuilder.append(", address=").append(address); stringBuilder.append('}'); return stringBuilder.toString(); } }
Output of the program
| Nov 25, 2008 3:39:29 AM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions INFO: Loading XML bean definitions from class path resource [context.xml] ===============Inheritance demo================= Bean{name=’Roseindia.net’, address=Rohini} Bean{name=’Roseindia.net’, address=null} BUILD SUCCESSFUL (total time: 1 second) |
Related articles
- Spring cglib (shanisk.wordpress.com)
- Release 0.9.9 of Static JSF EL Expression Validator with Annotated Beans Autodetection (theholyjava.wordpress.com)
- Sweet Potato and Black Bean Hash (uglicoyote.wordpress.com)
- Wicket Markup Inheritance (premaseem.wordpress.com)
- “Power Soak” Your Beans Before Cooking by Giving them a Two Minute Boiling Water Bath [Cooking] (lifehacker.com)
- Simple Bean Salad Recipe With Variations (boisdejasmin.typepad.com)




