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

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

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

    斷點

    每天進步一點點!
    posts - 174, comments - 56, trackbacks - 0, articles - 21

    BeanUtils

    Posted on 2010-05-30 09:25 斷點 閱讀(428) 評論(0)  編輯  收藏 所屬分類: Apache

    apache.commons.beanutils.BeanUtils
    該class提供了一系列的靜態(tài)方法操作已存在的符合JavaBean規(guī)范定義的Java Class.這里強調(diào)的JavaBean規(guī)范,簡單來說就是一個Java Class通過一系列g(shù)etter和setter的方法向外界展示其內(nèi)在的成員變量(屬性)。

    通過BeanUtils的靜態(tài)方法,我們可以:
    復(fù)制一個JavaBean的實例--BeanUtils.cloneBean();
    在一個JavaBean的兩個實例之間復(fù)制屬性--BeanUtils.copyProperties(),BeanUtils.copyProperty();
    為一個JavaBean的實例設(shè)置成員變量(屬性)值--BeanUtils.populate(),BeanUtils.setProperty();
    從一個JavaBean的實例中讀取成員變量(屬性)的值--BeanUtils.getArrayProperty(),BeanUtils.getIndexedProperty(),BeanUtils.getMappedProperty(),BeanUtils.getNestedProperty(),BeanUtils.getSimpleProperty(),BeanUtils.getProperty(),BeanUtils.describe();

    1、BeanUtils.cloneBean(java.lang.object bean)
    為bean創(chuàng)建一個clone對象,方法返回類型為Object.此方法的實現(xiàn)機制建立在bean提供的一系列的getters和setters的基礎(chǔ)之上.此方法的正常使用代碼非常簡單,故略掉.

     

    2、BeanUtils.copyProperties(java.lang.Object dest, java.lang.Object orig)
    一個bean class有兩個實例:orig和dest,將orig中的成員變量的值復(fù)制給dest,即將已經(jīng)存在的dest變?yōu)閛rig的副本.與BeanUtils.cloneBean(java.lang.object bean)的區(qū)別就在于是不是需要創(chuàng)建新的實例了.
    原文如下:Copy property values from the origin bean to the destination bean for all cases where the property names are the same.


    3、BeanUtils.setProperty(java.lang.Object bean,java.lang.String name,java.lang.Object value)
    這個方法簡單的說就是將bean中的成員變量name賦值為value.


    BeanUtils.populate(java.lang.Object bean, java.util.Map properties)
    使用一個map為bean賦值,該map中的key的名稱與bean中的成員變量名稱相對應(yīng).注意:只有在key和成員變量名稱完全對應(yīng)的時候,populate機制才發(fā)生作用;但是在數(shù)量上沒有任何要求,如map中的key如果是成員變量名稱的子集,那么成員變量中有的而map中不包含的項將會保留默認(rèn)值;同樣,如果成員變量是map中key的子集,那么多余的key不會對populate的結(jié)果產(chǎn)生任何影響.恩,結(jié)果就是populate只針對map中key名稱集合與bean中成員變量名稱集合的交集產(chǎn)生作用。


    4、BeanUtils.getArrayProperty(java.lang.Object bean,java.lang.String name)
    獲取bean中數(shù)組成員變量(屬性)的值.
    如果我們指定的name不是數(shù)組類型的成員變量,結(jié)果會如何?會不會拋出類型錯誤的exception呢?回答是不會,仍然會返回一個String的數(shù)組,數(shù)組的第一項就是name對應(yīng)的值(如果不

    是String類型的話,JVM會自動的調(diào)用toString()方法的).


    BeanUtils.getIndexedProperty(java.lang.Object bean,java.lang.String name)
    BeanUtils.getIndexedProperty(java.lang.Object bean,java.lang.String name,int index)
    這兩個方法都是獲取數(shù)組成員變量(屬性)中的單一元素值的方法.
    比如,我想得到SampleObject中words[1]的值,用法如下:
    BeanUtils.getIndexedProperty(sampleOjbectInstance,"words[1]");
    BeanUtils.getIndexedProperty(sampleOjbectInstance,"words",1);


    BeanUtils.getMappedProperty(java.lang.Object bean,java.lang.String name)
    BeanUtils.getMappedProperty(java.lang.Object bean,java.lang.String name,java.lang.String key)


    BeanUtils.describe(java.lang.Object bean)
    將一個bean以map的形式展示。

    來源:http://www.chinaitpower.com/A/2005-07-03/150232.html

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


    網(wǎng)站導(dǎo)航:
    博客園   IT新聞   Chat2DB   C++博客   博問  
     
    主站蜘蛛池模板: 中文字幕亚洲电影| 巨胸喷奶水视频www免费视频 | 亚洲成_人网站图片| 久久精品国产精品亚洲精品 | 在线观看日本亚洲一区| 亚洲AV无码一区二区乱孑伦AS | 人妻仑乱A级毛片免费看| 亚洲六月丁香婷婷综合| 亚洲色图.com| 水蜜桃亚洲一二三四在线| 亚洲中文字幕伊人久久无码| 日韩视频免费在线| 思思re热免费精品视频66| 在线看片免费人成视频福利| 一级一级一级毛片免费毛片| 自拍偷自拍亚洲精品播放| 国产亚洲精品成人AA片| 亚洲成av人片不卡无码| 久久亚洲美女精品国产精品| 亚洲AV无码乱码国产麻豆穿越 | 一区二区免费在线观看| 国产精品亚洲一区二区在线观看| 亚洲国产福利精品一区二区| 久久精品亚洲精品国产色婷 | 两个人看的www视频免费完整版| 黄网站色视频免费看无下截 | 国产高清免费在线| 日韩免费三级电影| 国产jizzjizz视频免费看| 午夜视频在线在免费| 女人被弄到高潮的免费视频| 成人毛片免费网站| 日韩精品无码人妻免费视频| 精品国产免费观看久久久| 在线观看国产情趣免费视频| 国产免费观看网站| 亚洲va中文字幕无码| 久久久久无码专区亚洲av| 亚洲熟妇无码乱子AV电影| 亚洲AV午夜福利精品一区二区| 亚洲AV美女一区二区三区|