<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 165, comments - 198, trackbacks - 0, articles - 1
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    Jakarta Commons BeanUtils 學習

    Posted on 2007-08-10 10:36 G_G 閱讀(1264) 評論(0)  編輯  收藏 所屬分類: Jakarta Commons
    參考:http://www.duduwolf.com/wiki/2007/296.html
    ????? http://www.chinaitpower.com/A/2005-07-03/150232.html

    1)普通的Bean處理? 不管是什么Set參數為3個 ( 對象本身, 屬性名或屬性內位置, 值 ) //list的add有點特別
    ??? ??? ??? ??? ? ??? ??? ? Get
    參數為2個( 對象本身, 屬性名或屬性內位置 )
    ??
    ????????Employee?em?=?new?Employee();? //String name; String[] ss;? Map map; List list;
    ????????BeanUtils.setProperty(em,
    "name","liukaiyi");? //String set
    ????????BeanUtils.setProperty(em,
    "ss",new?String[]{"1","2","3"}); //String[] set
    ??????? ?? BeanUtils.setProperty(em,"ss[2]","google");? //String[2] set

    ????????BeanUtils.setProperty(em,
    "map",new?HashMap());?? //Map set?
    ????????????BeanUtils.setProperty(em,"map(key)","value");? //Map.put(Key,Value)
    ????????????
    ????????BeanUtils.setProperty(em,
    "list",new?ArrayList(?Arrays.asList(?new?Object[20]?)?)); //List有點特別
    ????????????BeanUtils.setProperty(em,"list[0]","list");?????? //不可以直接添加???
    ????????????
    ????????BeanUtils.setProperty(em,
    "avg","23");?????? //int set
    ????????????????
    ????????
    ????????System.out.println(?BeanUtils.getSimpleProperty(em,
    "name")?);???
    ????????System.out.println(?BeanUtils.getProperty(em,"ss[2]")?);
    ????????System.out.println(?BeanUtils.getProperty(em,"map(key)")?);
    ????????
    ????????System.out.println(?BeanUtils.getProperty(em,
    "list[0].class")?);? // 取的是 ==list.get(0).getClass()
    ????????
    ????????System.out.println(?BeanUtils.getProperty(em,
    "avg")?);?

    2)動態屬性
    ?//定義動態屬性集
    ?DynaProperty[]?props?=?new?DynaProperty[]{
    ????
    new?DynaProperty("address",?java.util.Map.class),
    ????
    new?DynaProperty("subordinate",?mypackage.Employee[].class),
    ????
    new?DynaProperty("firstName",?String.class),
    ????
    new?DynaProperty("lastName",??String.class)
    ??????};
    ?
    //創建動態類來設定動態屬性值
    ????BasicDynaClass?dynaClass?=?new?BasicDynaClass("employee",?null,?props);
    ??? DynaBean?employee?
    =?dynaClass.newInstance();
    ????employee.set(
    "address",?new?HashMap());
    ????employee.set(
    "subordinate",?new?mypackage.Employee[0]);
    ????employee.set(
    "firstName",?"Fred");
    ????employee.set(
    "lastName",?"Flintstone");

    //也可以同上一樣 提供統一 的Get Set 還是 字符操作 ^o^? 哈哈
    ??? ???? BeanUtils.setProperty(bean,"address",new HashMap());
    ??? ??? ???? BeanUtils.setProperty(bean,"address(ads1)","江西");
    ??? ??? ?BeanUtils.setProperty(bean,"name","liu");
    ??? ??? ?BeanUtils.setProperty(bean,"subordinate",new String[3]);
    ??? ??? ???? BeanUtils.setProperty(bean,"subordinate[1]","heha");
    ??? ??? ?System.out.println(? BeanUtils.getProperty(bean,"address(ads1)") );
    ??? ??? ?System.out.println(? BeanUtils.getProperty(bean,"name") );
    ??? ??? ?System.out.println(? BeanUtils.getProperty(bean,"subordinate[1]") );

    3)JDBC 擴展
    ?Connection?conn?=?;
    ????Statement?stmt?
    =?conn.createStatement();
    ????ResultSet?rs?
    =?stmt.executeQuery
    ????(
    "select?accountid,?name?from?customers");
    ????Iterator?rows?
    =?(new?ResultSetDynaClass(rs)).iterator();? //ResultSetDynaClass(java.sql.ResultSet resultSet)
    ????while?(rows.hasNext())?{
    ?
    //利用動態bean進行輸出
    ????DynaBean?row?=?(DynaBean)?rows.next();?? //連實體Bean都可以不要了?
    ??? ??? BeanUtils.copyProperties( MyBean ,row );? //? bean<--dynaBean 就這樣去得到值
    ^o^?
    ??? ?? ?? MyBean.get
    Accountid();? ....???????????
    ????}
    ????rs.close();
    ????stmt.close();

    4)HttpServletRequest 擴展
    ????HttpServletRequest?request?=?;
    ????MyBean?bean?
    =?;
    ????HashMap?map?
    =?new?HashMap();
    ????Enumeration?names?
    =?request.getParameterNames();
    ????
    while?(names.hasMoreElements())?{
    ??????String?name?
    =?(String)?names.nextElement();
    ??????map.put(name,?request.getParameterValues(name));
    ????}
    ????BeanUtils.populate(bean,?map);
    //bean<--map? struts好象是就用這個 Form


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 久久久久久免费视频| 日韩内射激情视频在线播放免费| 拍拍拍又黄又爽无挡视频免费| 久久久久亚洲AV无码网站| 一级做a爰全过程免费视频| 亚洲无人区午夜福利码高清完整版| 草久免费在线观看网站| 亚洲一级片内射网站在线观看| 国产精品综合专区中文字幕免费播放| 免费一区二区三区四区五区| 女人裸身j部免费视频无遮挡| 中文字幕亚洲天堂| 可以免费观看的毛片| 亚洲高清不卡视频| www.999精品视频观看免费| 亚洲国产欧美日韩精品一区二区三区 | 一级毛片一级毛片免费毛片| 久久水蜜桃亚洲av无码精品麻豆| 免费人成黄页在线观看日本| 亚洲人成网站影音先锋播放| 青青青国产在线观看免费 | 亚洲图片中文字幕| 青青操免费在线视频| 亚洲丝袜美腿视频| 嫩草视频在线免费观看| 美女隐私免费视频看| 亚洲阿v天堂在线| 99视频全部免费精品全部四虎 | 亚洲精品乱码久久久久久| 99热在线精品免费播放6| 亚洲夂夂婷婷色拍WW47| 亚洲无码精品浪潮| 91九色老熟女免费资源站| 亚洲国产精品无码久久九九大片| 国产精品亚洲不卡一区二区三区| 99ee6热久久免费精品6| 久久久久亚洲国产AV麻豆| 亚洲阿v天堂在线| 国产成人免费a在线视频app| 美女被cao网站免费看在线看| 亚洲av无码不卡久久|