Mega Code Archive

 
Categories / Java / Spring
 

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> /////////////////////////////////////////////////////////////////////////////////////// public interface Oracle {     public String defineMeaningOfLife(); } /////////////////////////////////////////////////////////////////////////////////////// public class Encyclopedia { } /////////////////////////////////////////////////////////////////////////////////////// public class BookwormOracle implements Oracle {     private Encyclopedia enc;     public void 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; public class CollectionInjection {     private Map map;     private Properties props;     private Set set;     private List list;     public static void main(String[] args) {         BeanFactory factory = new XmlBeanFactory(new FileSystemResource(                 "build/beans.xml"));         CollectionInjection instance = (CollectionInjection) factory.getBean("injectCollection");         instance.displayInfo();     }     public void setList(List list) {         this.list = list;     }     public void setSet(Set set) {         this.set = set;     }     public void setMap(Map map) {         this.map = map;     }     public void setProps(Properties props) {         this.props = props;     }     public void 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)