Heis的Blog

          保持簡單,保持愚蠢
          隨筆 - 29, 文章 - 1, 評論 - 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接口,可以在運行時創(chuàng)建動態(tài)Bean,而且創(chuà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以字符串形式訪問屬性
          String ageStr=BeanUtils.getProperty(person,"age");
          BeanUtils.setProperty(person,
          "age","50");

          Jakarta Commons Cookbook讀書筆記系列



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

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

          主站蜘蛛池模板: 兰考县| 新营市| 巴楚县| 台北市| 株洲市| 柳河县| 新巴尔虎左旗| 嘉善县| 运城市| 大洼县| 会宁县| 察隅县| 靖安县| 新建县| 花莲市| 郑州市| 万盛区| 凤山市| 余干县| 江达县| 太保市| 赣榆县| 利津县| 滨州市| 田林县| 龙陵县| 亚东县| 金塔县| 陇西县| 天全县| 呈贡县| 双峰县| 团风县| 夏邑县| 咸丰县| 喀喇| 名山县| 伊川县| 托里县| 阳信县| 图片|