日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

BeanUtils与PropertyUtils的常用方法

發(fā)布時(shí)間:2024/8/1 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 BeanUtils与PropertyUtils的常用方法 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

目錄

一、copyProperties(Object A,Object B)

1.1BeanUtils(推薦)

1.1.1特性

1.1.2代碼

1.2PropertyUtils

二、populate(Object bean, Map properties)

2.1BeanUtils

三、describe(Object bean)

3.1BeanUtils

3.2PropertyUtils(推薦)


BeanUtils提供對Java反射和自省API的包裝。其主要目的是利用反射機(jī)制對JavaBean的屬性進(jìn)行處理。一個(gè)JavaBean通常包含了大量的屬性,很多情況下,對JavaBean的處理導(dǎo)致大量get/set代碼堆積,增加了代碼長度和閱讀代碼的難度。

一、copyProperties(Object A,Object B)

通過反射將一個(gè)對象的值賦值給另一個(gè)對象

1.1BeanUtils(推薦)

1.1.1特性

? ? *只賦值字段名稱、類型相同的字段;

? ? *名稱或者類型不同的字段不做處理,需要手動處理。

? ??*適應(yīng)于包含大量屬性的,此方法耗時(shí)長,如果屬性少的話建議使用get/set方法進(jìn)行賦值

1.1.2代碼

注:引入的jar不同,用法不同

import org.springframework.beans.BeanUtils; //(常用)//BeanUtils.copyProperties(A,B) 將A中的值賦值給BMovieCompany movieCompany = new MovieCompany(); MovieCompanyExt movieCompanyExt = movieCompanyMapperExt.getCompanyByCompanyCode(redPacketExt.getCompanyCode()); BeanUtils.copyProperties(movieCompanyExt, movieCompany);------------------------------------------------------------------------------------------import org.apache.commons.beanutils.BeanUtils;//BeanUtils.copyProperties(B,A) 將A中的值賦值給BMovieCompany movieCompany = new MovieCompany(); MovieCompanyExt movieCompanyExt = movieCompanyMapperExt.getCompanyByCompanyCode(redPacketExt.getCompanyCode()); BeanUtils.copyProperties(movieCompany, movieCompanyExt);

1.2PropertyUtils

其實(shí)這個(gè)與上面的BeanUtils中用法一致,只是這種方法會進(jìn)行類型的自動轉(zhuǎn)換功能。在開發(fā)中這種用法還是比較少的,推薦使用BeanUtils方法,然后手動將類型不同的參數(shù)處理下就可以了。

二、populate(Object bean, Map properties)

將map轉(zhuǎn)換為對象

1.遍歷Map集合中的key

2.判斷key與bean實(shí)體中是否有相應(yīng)的屬性

3.就把這個(gè)key對應(yīng)的value值賦給bean的屬性

2.1BeanUtils

//BeanUtils.populate( Object bean, Map properties )import org.apache.commons.beanutils.BeanUtils;Product product = new Product(); Map map = request.getParameterMap(); BeanUtils.populate(product, map);

三、describe(Object bean)

3.1BeanUtils

BeanUtils.describe轉(zhuǎn)換后的Map的泛型是<String,String>此時(shí)獲取到的字段如果是數(shù)組類型的話只獲取了第一個(gè)元素

import org.apache.commons.beanutils.BeanUtils;Map<String,Object> param=new HashMap<String,Object>(); param = BeanUtils.describe(movieCompany);

3.2PropertyUtils(推薦)

import org.apache.commons.beanutils.PropertyUtils;Map<String,Object> param=new HashMap<String,Object>(); param = PropertyUtils.describe(movieCompany);

?

總結(jié)

以上是生活随笔為你收集整理的BeanUtils与PropertyUtils的常用方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。