Aware Injection | Interface Injection
Engine.java
Vehicle.java
package com.nt.beans;
import org.springframework.beans.BeansException; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; public class Vehicle implements ApplicationContextAware { private ApplicationContext ctx=null; public Vehicle() { System.out.println("Vehicle ::0-param constructor"); } public void setApplicationContext(ApplicationContext ctx) throws BeansException { System.out.println("Vehicle.setApplicationContext()"); this.ctx=ctx; } public void journey(String source, String destination) { Engine engine=null; System.out.println("Vehicle.journey(-,-)"); engine=ctx.getBean("engg",Engine.class); engine.start(); System.out.println("Journey is going on from "+source+" to "+destination); engine.stop(); } } |
applicationContext.xml
ClientTest.java
package com.nt.client;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.nt.beans.Vehicle;
public class ClientTest
{
public static void main(String[] args)
{
ApplicationContext ctx=null;
ctx=new ClassPathXmlApplicationContext("com/nt/cfgs/applicationContext.xml");
Vehicle v= ctx.getBean("vehicle",Vehicle.class);
v.journey("Hyderabad", "Banglore");
((AbstractApplicationContext) ctx).close();
}
}
|
Output :-
Engine ::0-param constructor
Vehicle ::0-param constructor
Vehicle.setApplicationContext()
Vehicle.journey(-,-)
Engine started....
Journey is going on from Hyderabad to Banglore
Engine stopped....
|
Post a Comment