Heis的Blog

          保持簡(jiǎn)單,保持愚蠢
          隨筆 - 29, 文章 - 1, 評(píng)論 - 122, 引用 - 0
          數(shù)據(jù)加載中……

          Jakarta Commons Cookbook讀書筆記--Commons BeanUtils(2)

          Jakarta Commons Cookbook讀書筆記系列

          2.2 org.apache.commons.beanutils.BeanComparator比較Bean屬性

          排序前

          Book book
          |--List authors
                    |--[0]->Person person1
                                    |--String name->"LiLei"
                    |--[1]->Person person2
                                    |--String name->"Ark"
                    |--[2]->Person person3
                                    |--String name->"HanMeimei"
                                   
          Comparator nameComparor=new BeanComparator("name");
          Collections.sort(book.getAuthors(),nameComparor);


          排序后
          Book book
          |--List authors
                    |--[0]->Person person1
                                    |--String name->"Ark"
                    |--[1]->Person person2
                                    |--String name->"HanMeimei"
                    |--[2]->Person person3
                                    |--String name->"LiLei"

          2.3 org.apache.commons.beanutils.collections.BeanMap 使用Map封裝Bean
          封裝屬性
          Person person=new Person();
          person.setName(
          "Heis");
          person.setAge(
          50);
          Map beanMap
          =new BeanMap(person);

          Map beanMap
                
          |--Entry(key->"name",value->"Heis")
                
          |--Entry(key->"age",value->Integer(50))

               
          getReadMethod(),getWriteMethod()取讀方法與寫方法
          BeanMap beanMap=new BeanMap(person);
          Method wMethod
          =beanMap.getWriteMethod("age");
          wMethod.invoke(person,
          new Integer(24));
          Method rMethod
          =beanMap.getReadMethod("age");
          rMethod.invoke(person);
          ->24

          2.4 使用org.apache.commons.beanutils.DynaBean接口,可以在運(yùn)行時(shí)創(chuàng)建動(dòng)態(tài)Bean,而且創(chuàng)建的動(dòng)態(tài)bean可以與BeanUtils包內(nèi)的工具(如PropertyUtils等)結(jié)合使用。
          DynaProperty[] beanProperties=new DynaProperty[]{
          new DynaProperty("name",String.class),
          new DynaProperty("age",Integer.class)};
          //BasicDynaBean implements DynaBean
          BasicDynaClass personClass=new BasicDynaClass("person",BasicDynaBean.class,beanProperties);
          DynaBean person
          =BasicDynaClass.newInstance();
          //set the properties
          person.set("name","Heis");
          PropertyUtils.setProperty(person,
          "age",new Integer(50));


          2.5 使用BeanUtils以字符串形式訪問(wèn)屬性
          String ageStr=BeanUtils.getProperty(person,"age");
          BeanUtils.setProperty(person,
          "age","50");

          Jakarta Commons Cookbook讀書筆記系列



          程序員的一生其實(shí)可短暫了,這電腦一開一關(guān),一天過(guò)去了,嚎;電腦一開不關(guān),那就成服務(wù)器了,嚎……

          posted on 2009-11-24 10:19 Heis 閱讀(1474) 評(píng)論(0)  編輯  收藏 所屬分類: Jakarta Commons Cookbook讀書筆記

          主站蜘蛛池模板: 兴文县| 靖州| 科技| 太保市| 高台县| 陇川县| 新巴尔虎左旗| 麦盖提县| 收藏| 左云县| 连南| 镇远县| 定结县| 九江县| 和林格尔县| 双流县| 溆浦县| 新巴尔虎右旗| 旅游| 吴川市| 专栏| 桃源县| 方山县| 武城县| 华蓥市| 石嘴山市| 松原市| 景德镇市| 双桥区| 遵化市| 偏关县| 石台县| 廉江市| 温泉县| 扶风县| 镇远县| 峨眉山市| 乡城县| 蕉岭县| 大洼县| 乌拉特中旗|