Calling Bean using init() method in Spring, this section describes the way to initialize a
bean through its lifecycle events using the init() method .Here we have
defined the property and values of the bean using the init method as shown
below:- initMethod.xml Here is the file named SimpleBean.java through
which we are retrieving the properties of the bean which we have defined in the
above file i.e. initMethod.xml. Output of the program Name: Roseindia.net Address: Rohini Type: Software Development Company
<bean id="mybean" class="Bean" init-method="init">:-Here
"Bean" is the name of the bean class which would be referred in
the xml file with the id "mybean".
init-method="init":-Specify the init method named
"init" in the configuration file.
<property name="name"> <value>Roseindia.net</value>:-Here
the <property> element is used to declare the attributes and to pass the desired value to the
property element, the <value> element is used. Here the property name
is "name"and its value is "Roseindia.net".
<bean id="mybean" class="Bean" init-method="init">
<property name="name">
<value>Roseindia.net</value>
</property>
<property name="address">
<value>Rohini</value>
</property>
<property name="type">
<value>Software Development Company</value>
</property>
</bean>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="mybean" class="Bean" init-method="init">
<property name="name">
<value>Roseindia.net</value>
</property>
<property name="address">
<value>Rohini</value>
</property>
<property name="type">
<value>Software Development Company</value>
</property>
</bean>
</beans>
BeanFactory factory = new XmlBeanFactory(new FileSystemResource("initMethod.xml")):-Creates
an instance of the XmlBeanFactory which is used to read bean definition
from an XML document.
SimpleBean.java
import org.springframework.beans.factory.BeanCreationException;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.FileSystemResource;
public class Bean {
private static final String DEFAULT_NAME = "Girish";
private String name = null;
private String address = null;
private String type = null;
public void setName(String name) {
this.name = name;
}
public void setAddress(String address) {
this.address = address;
}
public void setType(String type) {
this.type = type;
}
public void init() {
System.out.println("Initializing bean");
if (name == null) {
System.out.println("Using default name");
name = DEFAULT_NAME;
}
if (address == null) {
System.out.println("Using default name");
address = DEFAULT_NAME;
}
if (type == null) {
System.out.println("Using default name");
type = DEFAULT_NAME;
}
}
public String toString() {
return "Name: " + name
+ "\nAddress: " + address + "\nType: " + type ;
}
public static void main(String[] args) {
BeanFactory factory = new XmlBeanFactory(new FileSystemResource(
"initMethod.xml"));
Bean Bean1 = getBean("mybean", factory);
}
private static Bean getBean(String beanName, BeanFactory factory) {
try {
Bean bean = (Bean) factory.getBean(beanName);
System.out.println(bean);
return bean;
} catch (BeanCreationException ex) {
System.out.println("An error occured
in bean configuration: " + ex.getMessage());
return null;
}
}
}
Initializing bean
If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.
Ask your questions, our development team will try to give answers to your questions.
Ask Questions? Discuss: init Method in Spring
Post your Comment