日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

淺談java對象之間相互轉化的多種方式

瀏覽:172日期:2022-08-26 14:32:51

第一種:使用org.apache.commons.beanutils.PropertyUtils.copyProperties()拷貝一個bean中的屬性到另一個bean中,第一個參數是目標bean,第二個參數是源bean。

特點:

1.它的性能問題相當差

2.PropertyUtils有自動類型轉換功能,而java.util.Date恰恰是其不支持的類型

3.PropertyUtils支持為null的場景;

public static void copyProperties(Object dest, Object orig) {try { PropertyUtils.copyProperties(dest, orig);} catch (IllegalAccessException | InvocationTargetExceptionthrow new IllegalArgumentException(e);| NoSuchMethodException e) { }}

第二種:使用BeanUtils.copyProperties()拷貝一個bean中的屬性到另一個bean中,第一個參數是目標bean,第二個參數是源bean。

特點:

1.BeanUtils速度相對快一些

2.BeanUtils沒有自動轉換功能,遇到參數名相同,類型不同的參數不會進行賦值。

3.BeanUtils對部分屬性不支持null的情況,Ineger、Boolean、Long等不支持

public static void copyProperties(Object dest, Object orig) {try { BeanUtils.copyProperties(dest, orig);} catch (IllegalAccessException | InvocationTargetException e) {throw new IllegalArgumentException(e);}}

第三種:將java對象轉換為json,然后將JSON轉換成Java對象。注意屬性名要相同---采取com.fasterxml.jackson.databind.ObjectMapper的方法

特點:

1.屬性名一致就可以轉換

2.效率及異常還未驗證

private static final ObjectMapper MAPPER = new ObjectMapper();String jsonStr = MAPPER.writeValueAsString(obj);RabbitMQDataDto detail = MAPPER.readValue(jsonStr , RabbitMQDataDto.class);

第四種:將java對象轉換為json,然后將JSON轉換成Java對象。注意屬性名要相同---采取com.alibaba.fastjson.JSON

特點:

1.需要拷貝的兩個對象里面都包含有另一個對象,但是另一個對象里面屬性相同但是對象名不同;

采用json來轉換只要屬性名一致即可

InsurePersonInfoDto applicantInfo = insureRelevantPersonInfoDto.getApplicantInfo();ThirdPartInsurePersonInfo thirdPartApplicantInfo = JSON.parseObject(JSON.toJSONString(applicantInfo), new TypeReference<ThirdPartInsurePersonInfo>() {});

補充知識:javabean實體類與實體類之間的快速轉換

一、Dozer是什么?

dozer是一個能把實體和實體之間進行轉換的工具.只要建立好映射關系.就像是ORM的數據庫和實體映射一樣.

使用方法示例如下:

// article(PO) -> articleVO

ArticleVO articleVO = dozerMapper.map(article, ArticleVO.class);

這段示例代碼。將從數據庫里面查詢得到的PO對象article,轉換為VO對象articleVO,轉換過程將所有同名同類型的數據自動賦值給articleVO的成員變量,當然除了reader(因為PO里面沒有reader數組數據)。轉換需要寫屬性之間的映射么?不! 默認是根據屬性名稱來匹配的.

如果沒有Dozer我們進行,對象之間的轉換賦值,我們會怎么做?下面的這5行等于上面的一行。

articleVO.setId(article.getId());articleVO.setAuthor(article.getAuthor());articleVO.setTitle(article.getTitle());articleVO.setContent(article.getContent());articleVO.setCreateTime(article.getCreateTime());

二、使用Dozer進行實體類的轉換:

首先引入依賴

<dependency> <groupId>net.sf.dozer</groupId> <artifactId>dozer</artifactId> <version>5.4.0</version> </dependency>

注入一個工具類DozerBeanMapper 到上下文中,

@Configuration public class DozerBeanMapperConfigure { @Bean public DozerBeanMapper mapper() { DozerBeanMapper mapper = new DozerBeanMapper(); return mapper; } }

注入然后開始使用啦

@Autowired

protected Mapper dozerMapper;

在實際應用中,我們不只需要PO轉VO,有時還需要List轉List.寫一個工具類,實現List轉List

public class DozerUtils { static DozerBeanMapper dozerBeanMapper = new DozerBeanMapper(); public static <T> List<T> mapList(Collection sourceList, Class<T> destinationClass){ List destinationList = Lists.newArrayList(); for (Iterator i$ = sourceList.iterator(); i$.hasNext();){ Object sourceObject = i$.next(); Object destinationObject = dozerBeanMapper.map(sourceObject, destinationClass); destinationList.add(destinationObject); } return destinationList; }}

以上這篇淺談java對象之間相互轉化的多種方式就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
亚洲大全视频| 欧美综合另类| 亚洲国产成人精品女人| 欧美国产小视频| 久久久国产精品入口麻豆 | 久久一区二区三区电影| 蜜桃成人av| 亚洲美洲欧洲综合国产一区| 好看不卡的中文字幕| 亚洲成人精选| 日韩精品a在线观看91| 国产精品久久久久久久久久久久久久久| 国产精品久久久久久妇女| 欧美精品国产一区| 日本免费一区二区三区四区| 国产精品115| 日本不卡一区二区三区| 日韩中文字幕不卡| 日本麻豆一区二区三区视频| 精品国产黄a∨片高清在线| 久久九九精品| 最新国产精品| 日韩成人免费| 中文字幕亚洲精品乱码| 蜜桃久久久久| 免费日韩av片| 精品国产91| 在线国产精品一区| 成人精品久久| 91欧美极品| 激情欧美亚洲| 国产精品一区二区av日韩在线| 麻豆一区二区在线| 伊人久久大香线蕉av超碰演员| 日本va欧美va欧美va精品| 91精品一区二区三区综合在线爱 | 美女精品视频在线| 亚洲激情另类| 色婷婷综合网| 青草国产精品| 国产一级久久| 日韩一区二区三区免费播放| 国产精一区二区| 欧美99久久| 国产伦精品一区二区三区视频| 国产亚洲毛片| 欧美亚洲激情| 久久九九99| av免费不卡国产观看| 国产日韩欧美一区| 亚洲青青久久| 久久最新视频| 亚洲少妇一区| 一区在线视频观看| 99久久激情| 亚洲福利精品| 激情久久久久久| 欧美一区三区| 国产aⅴ精品一区二区三区久久 | 国产精品jk白丝蜜臀av小说| 日本国产欧美| 欧美在线91| 欧美视频久久| 欧美精品三级在线| 欧美日韩视频免费看| 日本不卡的三区四区五区| 日韩精品视频在线看| 日本不卡在线视频| 久久超级碰碰| 国产精品精品国产一区二区| 国产成人精品福利| 韩国精品主播一区二区在线观看 | 国产极品模特精品一二| 国产精品1luya在线播放| 久久亚洲黄色| 久久只有精品| 久久精品在线| 三级欧美韩日大片在线看| 快she精品国产999| 日韩在线黄色| 日产精品一区二区| av不卡在线看| 欧美精品中文字幕亚洲专区| av资源中文在线| 一区在线免费观看| 日本亚洲欧美天堂免费| 国产亚洲观看| 精品亚洲精品| 99久久99视频只有精品| 亚洲aa在线| 神马午夜在线视频| 久久av在线| 国产精品99久久免费观看| 成人亚洲精品| 免费日韩视频| av日韩中文| 亚洲精品第一| 色欧美自拍视频| 免费视频最近日韩| 精品日韩一区| 激情久久久久久| 国产伦乱精品| 好吊日精品视频| 国产精品a级| 免费视频久久| 国产白浆在线免费观看| 免费观看在线综合| 正在播放日韩精品| 99在线|亚洲一区二区| 日本黄色精品| 国产日韩三级| 亚洲一区二区三区无吗| 88xx成人免费观看视频库| 青青草国产成人99久久| 五月天久久网站| 国产精品三级| 亚洲精品小说| 国产粉嫩在线观看| 国产日韩欧美高清免费| 美女黄网久久| 久久国产电影| 精品国产亚洲一区二区三区在线| 亚洲精品乱码久久久久久蜜桃麻豆| 日韩成人免费| 欧美日本不卡高清| 亚洲精品福利| 免费欧美在线视频| 好看不卡的中文字幕| 婷婷精品视频| 精品欧美一区二区三区在线观看| 久久国产尿小便嘘嘘| 日韩精品一级中文字幕精品视频免费观看 | 激情欧美国产欧美| xxxxx性欧美特大| 国产精品亚洲欧美日韩一区在线| 国产精品人人爽人人做我的可爱| 亚洲手机在线| 五月综合激情| 亚洲综合中文| 蜜臀久久99精品久久久久宅男| 在线精品视频在线观看高清| 波多野结衣久久精品| 欧美精品高清| 久久国产欧美| 9久re热视频在线精品| 亚洲精品自拍| 国产精品大片免费观看| 美女视频网站久久| 成人午夜亚洲| 亚洲国产欧美日本视频| 国产一区二区视频在线看| 欧美丰满日韩| 99re国产精品| 日韩高清欧美激情| 国产视频网站一区二区三区| 动漫av一区| 亚洲午夜在线| 日韩精品视频网| 国产精品yjizz视频网| 亚洲免费播放| 免费在线观看一区| 蜜桃视频欧美| 国产一卡不卡| 极品日韩av| 国产一卡不卡| 免费在线亚洲欧美| 激情综合自拍| 国产精品午夜av| 久久激情网站| 国产精品久av福利在线观看| 亚洲不卡系列| 18国产精品| 国产一区清纯| 久久精品资源| 中文字幕av一区二区三区人| 91免费精品| 日韩黄色免费网站| 国产日韩视频在线| 久久不见久久见中文字幕免费| 怡红院精品视频在线观看极品| 国产情侣一区| 亚洲不卡视频| 日本欧美一区二区| 天堂va欧美ⅴa亚洲va一国产| 亚洲激情国产| 亚洲一区激情| 欧美欧美黄在线二区| 日韩国产精品久久久久久亚洲| 免费看av不卡| 一本一道久久a久久精品蜜桃| 一区二区三区网站| 久久国产精品色av免费看| 国产精品麻豆成人av电影艾秋 | 91精品国产自产在线丝袜啪| 日本成人在线网站| 久久精品国产免费| 在线日韩中文| 国产专区一区| 免费视频亚洲| 久久精品99国产国产精|