greeting=Hello Dinesh! drawing.circle=Circle is Drawn!
<beans xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context" 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">
<context:annotation-config> </context:annotation-config>
<context:component-scan base-package="com.dineshonjava.sdnext.tutorial.property"></context:component-scan>
<bean class="com.dineshonjava.sdnext.tutorial.property.Point" id="center">
<property name="x" value="20"></property>
<property name="y" value="0"></property>
</bean>
<bean class="org.springframework.context.support.ResourceBundleMessageSource" id="messageSource">
<property name="basenames">
<list>
<value>myMessages</value>
</list>
</property>
</bean>
</beans>
package com.dineshonjava.sdnext.tutorial.property;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.MessageSource;
import org.springframework.stereotype.Component;
/**
* @author Dinesh Rajput
*
*/
@Component
public class Circle
{
@Autowired
private Point center;
@Autowired
private MessageSource messageSource;
/**
* @param messageSource the messageSource to set
*/
public void setMessageSource(MessageSource messageSource)
{
this.messageSource = messageSource;
}
/**
* @param center the center to set
*/
public void setCenter(Point center)
{
this.center = center;
}
public void draw()
{
System.out.println(this.messageSource.getMessage("drawing.circle", null, "Default Drawing Greeting", null));
}
}
package com.dineshonjava.sdnext.tutorial.property;
/**
* @author Dinesh Rajput
*
*/
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;
}
}
package com.dineshonjava.sdnext.tutorial.property;
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");
System.out.println(context.getMessage("greeting", null, "Default Greeting", null));
Circle circle = (Circle)context.getBean("circle");
shape.draw();
}
}
greeting=Hello Dinesh!
drawing.circle=Circle is Drawn!
drawing.point=Circle: Point is: ({0}, {1})
public void draw()
{
System.out.println(this.messageSource.getMessage("drawing.circle", null, "Default Drawing Greeting", null));
System.out.println(this.messageSource.getMessage("drawing.point", new Object[] {center.getX(), center.getY()}, "Default Drawing Greeting", null));
}

X-axis=20 Y-axis=0
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" id="placeholderConfig">
<property name="location" value="classpath:myMessage.properties">
</property>
</bean>
<bean class="com.dineshonjava.sdnext.tutorial.property.Point" id="center">
<property name="x" value="${X-axis}"></property>
<property name="y" value="${Y-axis}"></property>
</bean>
Labels: Spring3.0