- Java
- Spring
- IoC Collections
Collection Injection
/* Pro Spring By Rob Harrop Jan Machacek ISBN: 1-59059-461-4 Publisher: Apress *//////////////////////////////////////////////////////////////////////////////////////// //File: beans.xml <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <!-- oracle bean used for a few examples --> <bean id="oracle" name="wiseworm"class="BookwormOracle"/> <!-- collection injection samples --> <bean id="injectCollection"class="CollectionInjection"> <property name="map"> <map> <entry key="someValue"> <value>Hello World!</value> </entry> <entry key="someBean"> <ref local="oracle"/> </entry> </map> </property> <property name="props"> <props> <prop key="firstName"> Rob </prop> <prop key="secondName"> Harrop </prop> </props> </property> <property name="set"> <set> <value>Hello World!</value> <ref local="oracle"/> </set> </property> <property name="list"> <list> <value>Hello World!</value> <ref local="oracle"/> </list> </property> </bean> </beans> /////////////////////////////////////////////////////////////////////////////////////// publicinterface Oracle { public String defineMeaningOfLife(); } /////////////////////////////////////////////////////////////////////////////////////// publicclass Encyclopedia { } /////////////////////////////////////////////////////////////////////////////////////// publicclass BookwormOracle implements Oracle { private Encyclopedia enc; publicvoid setEncyclopedia(Encyclopedia enc) { this.enc = enc; } public String defineMeaningOfLife() { return"Encyclopedia's are a waste of money - use the Internet"; } } /////////////////////////////////////////////////////////////////////////////////////// import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Properties; import java.util.Set; import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.xml.XmlBeanFactory; import org.springframework.core.io.FileSystemResource; publicclass CollectionInjection { private Map map; private Properties props; private Set set; private List list; publicstaticvoid main(String[] args) { BeanFactory factory = new XmlBeanFactory(new FileSystemResource( "build/beans.xml")); CollectionInjection instance = (CollectionInjection) factory.getBean("injectCollection"); instance.displayInfo(); } publicvoid setList(List list) { this.list = list; } publicvoid setSet(Set set) { this.set = set; } publicvoid setMap(Map map) { this.map = map; } publicvoid setProps(Properties props) { this.props = props; } publicvoid displayInfo() { // display the Map Iterator i = map.keySet().iterator(); System.out.println("Map contents:\n"); while (i.hasNext()) { Object key = i.next(); System.out.println("Key: " + key + " - Value: " + map.get(key)); } // display the properties i = props.keySet().iterator(); System.out.println("\nProperties contents:\n"); while (i.hasNext()) { String key = i.next().toString(); System.out.println("Key: " + key + " - Value: " + props.getProperty(key)); } // display the set i = set.iterator(); System.out.println("\nSet contents:\n"); while (i.hasNext()) { System.out.println("Value: " + i.next()); } // display the list i = list.iterator(); System.out.println("\nList contents:\n"); while (i.hasNext()) { System.out.println("Value: " + i.next()); } } }
CollectionInjection.zip( 1,199 k)Related examples in the same category