<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| 亚洲最大黄色网址| 免费观看激色视频网站bd | 国产a视频精品免费观看| 亚洲精品动漫在线| 2021免费日韩视频网| 国产一级淫片a免费播放口| 亚洲欧洲精品无码AV| a级毛片在线免费| 婷婷久久久亚洲欧洲日产国码AV | 亚洲性色高清完整版在线观看| 91精品国产免费久久国语麻豆| 亚洲不卡1卡2卡三卡2021麻豆| 97在线线免费观看视频在线观看| 色在线亚洲视频www| 国产精品jizz在线观看免费| 一本久久免费视频| 亚洲国产a∨无码中文777| 免费无码成人AV在线播放不卡| 国产亚洲精品免费| aaa毛片视频免费观看| 亚洲国产二区三区久久| 国产桃色在线成免费视频| 羞羞视频免费观看| 亚洲AV综合色区无码一区爱AV| 国内精品乱码卡1卡2卡3免费| 亚洲七久久之综合七久久| 国产亚洲情侣一区二区无码AV| 蜜桃视频在线观看免费视频网站WWW| 亚洲日韩国产精品无码av| 国产美女精品视频免费观看| a毛片在线免费观看| 国产亚洲精品bv在线观看 | 亚洲国产综合精品中文第一区| 亚洲国产精品免费观看| 日韩大片免费观看视频播放| 久久精品国产精品亚洲蜜月|