Mega Code Archive

 
Categories / Java / Apache Common
 

Get Mapped Property

import java.util.Map; import java.util.HashMap; import java.util.Iterator; import java.lang.reflect.Method; import org.apache.commons.collections.Bag; import org.apache.commons.collections.bag.HashBag; import org.apache.commons.beanutils.BeanUtils; import org.apache.commons.beanutils.PropertyUtils; import org.apache.commons.lang.StringUtils; public class TasteOfThingsV1 {   private static Map testMap;   private static TestBean testBean;   public static void main(String args[]) throws Exception {     prepareData();     HashBag myBag = new HashBag(testMap.values());     System.err.println("How many Boxes? " + myBag.getCount("Boxes"));     myBag.add("Boxes", 5);     System.err.println("How many Boxes now? " + myBag.getCount("Boxes"));     Method method =       testBean.getClass().getDeclaredMethod("getTestMap", new Class[0]);     HashMap reflectionMap =       (HashMap)method.invoke(testBean, new Object[0]);     System.err.println("The value of the 'squ' key using reflection: " +       reflectionMap.get("squ"));     String squ = BeanUtils.getMappedProperty(testBean, "testMap", "squ");     squ = StringUtils.capitalize(squ);     PropertyUtils.setMappedProperty(testBean, "testMap", "squ", squ);     System.err.println("The value of the 'squ' key is: " +       BeanUtils.getMappedProperty(testBean, "testMap", "squ"));     String box = (String)testMap.get("box");     String caps =       Character.toTitleCase(box.charAt(0)) +       box.substring(1, box.length());     System.err.println("Capitalizing boxes by Java: " + caps);   }   private static void prepareData() {     testMap = new HashMap();     testMap.put("box", "boxes");     testMap.put("squ", "squares");     testMap.put("rect", "rectangles");     testMap.put("cir", "circles");     testBean = new TestBean();     testBean.setTestMap(testMap);   } } ------------------------------------------------------------------ import java.util.Map; import java.util.HashMap; public class TestBean {   private Map testMap;   public Map getTestMap() {     return this.testMap;   }   public void setTestMap(Map testMap) {     this.testMap = testMap;   } }                     ApacheCommonTasteOfThingsV1.zip( 877 k)