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