<bean class="com.dineshonjava.sdnext.innerBean.tutorial.Triangle" id="triangle"> <property name="pointA" ref="pointA"></property> <property name="pointB"> <bean class="com.dineshonjava.sdnext.innerBean.tutorial.Point"> <property name="x" value="-20"></property> <property name="y" value="0"></property> </bean> </property> <property name="pointC"> <bean class="com.dineshonjava.sdnext.innerBean.tutorial.Point"> <property name="x" value="20"></property> <property name="y" value="0"></property> </bean> </property> </bean> <bean class="com.dineshonjava.sdnext.innerBean.tutorial.Point" id="pointA"> <property name="x" value="0"></property> <property name="y" value="0"></property> </bean>
package com.dineshonjava.sdnext.innerBean.tutorial; public class Triangle { private Point pointA; private Point pointB; private Point pointC; /** * @param pointA the pointA to set */ public void setPointA(Point pointA) { this.pointA = pointA; } /** * @param pointB the pointB to set */ public void setPointB(Point pointB) { this.pointB = pointB; } /** * @param pointC the pointC to set */ public void setPointC(Point pointC) { this.pointC = pointC; } public void draw() { System.out.println("PointA is ("+pointA.getX()+", "+pointA.getY()+")"); System.out.println("PointB is ("+pointB.getX()+", "+pointB.getY()+")"); System.out.println("PointC is ("+pointC.getX()+", "+pointC.getY()+")"); } }Point.java
package com.dineshonjava.sdnext.innerBean.tutorial;
public class Point
{
private int x;
private int y;
/**
* @return the x
*/
public int getX() {
return x;
}
/**
* @param x the x to set
*/
public void setX(int x) {
this.x = x;
}
/**
* @return the y
*/
public int getY() {
return y;
}
/**
* @param y the y to set
*/
public void setY(int y) {
this.y = y;
}
}
<beans class="com.sdnext.innerBean.tutorial.Triangle" triangle="triangle" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:p="http://www.springframework.org/schema/p" xmlns:security="http://www.springframework.org/schema/security" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.springframework.org/schema/beans" xsi:schemalocation="http://www.springframework.org/schema/beans> <bean id="triangle"> <property name="pointA" ref="pointA"></property> <property name="pointB"> <bean class="com.dineshonjava.sdnext.innerBean.tutorial.Point"> <property name="x" value="-20"></property> <property name="y" value="0"></property> </bean> </property> <property name="pointC"> <bean class="com.dineshonjava.sdnext.innerBean.tutorial.Point"> <property name="x" value="20"></property> <property name="y" value="0"></property> </bean> </property> <bean class="com.dineshonjava.sdnext.innerBean.tutorial.Point" id="pointA"> <property name="x" value="0"></property> <property name="y" value="0"></property> </bean> </beans>DrawingApp.java
package com.dineshonjava.sdnext.innerBean.tutorial; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; /** * @author Dinesh Rajput * */ public class DrawingApp { /** * @param args */ public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("spring.xml"); Triangle triangle = (Triangle) context.getBean("triangle"); triangle.draw(); } }
<beans> ---- <bean class="com.dineshonjava.sdnext.innerBean.tutorial.Triangle" id="triangle"> ----- ----- </bean> <bean ---=""> ---- </bean> <alias alias="triangleAlias" name="triangle"> </alias></beans>
ApplicationContext context = new ClassPathXmlApplicationContext("spring.xml"); Triangle triangle = (Triangle) context.getBean("triangleAlias"); triangle.draw();
<bean class="com.sdnext.innerBean.tutorial.Triangle" id="triangle"> <property name="pointA" ref="zeroPoint"></property> </bean> <bean class="com.dineshonjava.sdnext.innerBean.tutorial.Point" name="zeroPoint"> </bean>
<bean class="com.sdnext.innerBean.tutorial.Triangle" id="triangle"> <property name="pointA"> <idref bean="zeropoint"> </idref> </property> </bean> <bean class="com.dineshonjava.sdnext.innerBean.tutorial.Point" id="zeroPoint"> </bean>
Labels: Spring3.0