Commons BeanUtilsでのMap操作

1454 ワード

Populate(bean,map)Mapの値をbeanに設定
 
[java]  view plain copy
  ConvertUtils.register( new   DateLocaleConverter(), Date. class );


  • BeanUtils.populate(bean, request.getParameterMap());  

    PropertyUtils.describe()メソッドは、返すbeanの各読み取り可能な属性をMapに追加する.値が設定とデフォルト値が返され、上記の例ではBookクラスにInteger型のpage属性がある場合、書籍ページ数を表す.設定されていない場合はnullに戻る.pageプロパティがint型の場合、0が返されます.
     
    以下から抜粋:http://www.blogjava.net/hexuzhong/archive/2005/11/30/21925.html
     
    [java]  view plain copy
     
    Person author = new Person();  
  • author.setName("Timothy M. O'Brien");  

  •       
  • Book book = new Book();  

  • book.setName("Jakarta Commons Cookbook");  
  • book.setAuthor(author);  

  •   
  • //bookのすべての読み取り可能な属性を取得しmapの
  • に戻る
    Map bookMap = PropertyUtils.describe(book);  
  • //Bookクラスには、Authorタイプのプロパティ
  • が含まれています.
    //bookMapのauthor beanを取得し、そのすべての読み取り可能な属性をauthorMapのに戻します.
  • Map authorMap = PropertyUtils.describe(bookMap.get("author"));  

  •   
  • //出力
  • // Book Name: Jakarta Commons Cookbook  
  • // Author Name: Timothy M. O'Brien  

  • System.out.println("Book Name: " + bookMap.get("name"));  
  • System.out.println("Author Name: " + authorMap.get("name"));  

  •