For spring application we need following
resources as programs
·
POJO Class à a Simple Bean
·
Business Logic Class à Logic….
·
Main Client Class à contains main method with loading
the spring container
·
Spring.xml à all Bean Configurations
HelloBean.java
package bo;
public class HelloBean {
private String message;
public void setMessage(String
message) {
this.message = message;
}
public String getMessage()
{
return message;
}
public void Hello() {
System.out.println(message);
}
}
----------------- HelloMain .java---------
package main;
import
org.springframework.beans.factory.BeanFactory;
import
org.springframework.beans.factory.xml.XmlBeanFactory;
import
org.springframework.core.io.ClassPathResource;
import
org.springframework.core.io.Resource;
import bo.HelloBean;
public class HelloMain {
public static void main(String[] args)
{
Resource
resource = new ClassPathResource("res/helloSpring.xml");
BeanFactory
factory = new XmlBeanFactory(resource);
HelloBean
bean = (HelloBean) factory.getBean("ob");
bean.Hello();
}
}
----------------- helloSpring.xml---------
<?xml version="1.0"
encoding="UTF-8"?><!DOCTYPE beans PUBLIC "-//SPRING//DTD
BEAN 2.0//EN"
"http://www.springframework.org/dtd/spring-beans-2.0.dtd">
<beans>
<bean id="ob" class="bo.HelloBean">
<property name="message"
value="Hello Spring!!" />
</bean>
</beans>
Step –by –step Execution Flow
1.
In main method
Resource class loads the helloSpring.xml
file.
Resource resource = new
ClassPathResource("res/helloSpring.xml");
2.
It just check the
Syntax and creates a Resource object
3.
BeanFactory instantiate
by loading resource object
BeanFactory
factory = new XmlBeanFactory(resource);
4.
While loading Spring
Container will inject the all dependencies by loading xml file
5.
Container will inject
the all the dependencies and it will create the Bean Class Objects
6.
All the Bean class
objects will stored in BeanFactory Object
7.
We can get the
BeanFactory object by calling getBean(“id”),
HelloBean bean =
(HelloBean) factory.getBean("ob");
8.
it always return
object of java.lang.Object.so we have to type cast
9.
and call appropriate
methods