精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

如何在Java中實現對象和Map之間的轉換

開發 前端
本文將介紹幾種不同的方法來實現Java對象和Map之間的相互轉換,選擇哪種方法取決于項目的具體需求和個人偏好。

Java開發中,經常需要將Java對象轉換成Map,或者反過來將Map轉換成Java對象。這種轉換在很多場景下都非常有用,比如在序列化和反序列化過程中、在數據傳輸和持久化時、或者在進行對象屬性的批量操作時。

本文將介紹幾種不同的方法來實現Java對象和Map之間的相互轉換,選擇哪種方法取決于項目的具體需求和個人偏好。

方法一:使用Spring Framework的ReflectionUtils

Bean轉為Map

Person person = new Person();
person.setAge(18);
person.setOpenid("123456");
person.setName("一安");
person.setSubName("公眾號");
System.out.println(bean2Map(person));
System.out.println(bean2Map2(person));

public static Map<String, Object> bean2Map(Object object) {
    Map<String, Object> map = new HashMap<>();
    ReflectionUtils.doWithFields(object.getClass(), field -> {
        field.setAccessible(true);
        Object value = ReflectionUtils.getField(field, object);
        if (value != null) {
            map.put(field.getName(), value);
        }
    });
    return map;
}
public static Map<String, Object> bean2Map2(Object object) {
    Map<String, Object> map = new HashMap<>();
    Class<?> clazz = object.getClass();
    Field[] fields = clazz.getDeclaredFields();
    for (Field field : fields) {
        field.setAccessible(true);
        try {
            Object value = field.get(object);
            if (value != null) {
                map.put(field.getName(), value);
            }
        } catch (IllegalAccessException e) {
            throw new RuntimeException("Error accessing field: " + field.getName(), e);
        }
    }
    return map;
}

Map轉為Bean

Map<String, Object> map = new HashMap();
map.put("age", 18);
map.put("openid", "123456");
map.put("name", "一安");
map.put("subName", "公眾號");
System.out.println(map2Bean(map, Person.class));
System.out.println(map2Bean2(map, Person.class));

public static <T> T map2Bean(Map<String, Object> map, Class<T> clazz) throws IllegalAccessException, InstantiationException {
    T instance = clazz.newInstance();
    ReflectionUtils.doWithFields(clazz, field -> {
        field.setAccessible(true);
        if (map.containsKey(field.getName())) {
            ReflectionUtils.setField(field, instance, map.get(field.getName()));
        }
    });
    return instance;
}

public static <T> T map2Bean2(Map<String, Object> map, Class<T> clazz) throws IllegalAccessException, InstantiationException {
    T instance = clazz.newInstance();
    Field[] fields = clazz.getDeclaredFields();
    for (Field field : fields) {
        field.setAccessible(true);
        if (map.containsKey(field.getName())) {
            field.set(instance, map.get(field.getName()));
        }
    }
    return instance;
}

方法二:使用Hutool工具

<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-all</artifactId>
    <version>5.8.5</version>
</dependency>

Bean轉為Map

Person person = new Person();
person.setAge(18);
person.setOpenid("123456");
person.setName("一安");
person.setSubName("公眾號");

Map<String, Object> map = BeanUtil.beanToMap(person);

Map轉為Bean

Map<String, Object> map = new HashMap();
map.put("age", 18);
map.put("openid", "123456");
map.put("name", "一安");
map.put("subName", "公眾號");

Person person = BeanUtil.toBean(map, Person.class);

方法三:使用Jackson工具

Bean轉為Map

Person person = new Person();
person.setAge(18);
person.setOpenid("123456");
person.setName("一安");
person.setSubName("公眾號");

System.out.println(bean2Map(person));

public static Map<String, Object> bean2Map(Object object) {
        ObjectMapper objectMapper = new ObjectMapper();
        return objectMapper.convertValue(object, new TypeReference<Map<String, Object>>() {
        });
    }

Map轉為Bean

Map<String, Object> map = new HashMap();
map.put("age", 18);
map.put("openid", "123456");
map.put("name", "一安");
map.put("subName", "公眾號");

System.out.println(map2Bean(map, Person.class));

public static <T> T map2Bean(Map<String, Object> map, Class<T> clazz){
    ObjectMapper objectMapper = new ObjectMapper();
    return objectMapper.convertValue(map, clazz);
}

方法四:使用Apache Commons Lang的BeanUtils

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
    <version>3.12.0</version> 
</dependency>

Bean轉為Map

Person person = new Person();
person.setAge(18);
person.setOpenid("123456");
person.setName("一安");
person.setSubName("公眾號");
System.out.println(bean2Map(person));

public static Map<String, String> bean2Map(Object object) {
    try {
        return BeanUtils.describe(object);
    } catch (Exception e) {
        throw new RuntimeException("Error converting object to map: " + e.getMessage(), e);
    }
}

Map轉為Bean

Map<String, Object> map = new HashMap();
map.put("age", 18);
map.put("openid", "123456");
map.put("name", "一安");
map.put("subName", "公眾號");
System.out.println(map2Bean(map, Person.class));

public static <T> T map2Bean(Map<String, ?> map, Class<T> clazz) {
    try {
        T instance = clazz.newInstance();
        BeanUtils.populate(instance, map);
        return instance;
    } catch (Exception e) {
        throw new RuntimeException("Error converting map to object: " + e.getMessage(), e);
    }
}

方法五:使用fastjson工具

<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.83</version>
</dependency>

Bean轉為Map

Person person = new Person();
person.setAge(18);
person.setOpenid("123456");
person.setName("一安");
person.setSubName("公眾號");

System.out.println(JSONObject.parseObject(JSONObject.toJSONString(person)));

Map轉為Bean

Map<String, Object> map = new HashMap();
map.put("age", 18);
map.put("openid", "123456");
map.put("name", "一安");
map.put("subName", "公眾號");

System.out.println(JSONObject.parseObject(JSONObject.toJSONString(map), Person.class));
責任編輯:武曉燕 來源: 一安未來
相關推薦

2023-04-26 15:19:36

JavaScripMap數組

2023-05-11 07:41:03

Java 8tMap方法

2021-10-19 07:27:08

Unix Dos轉換

2023-12-18 10:41:28

深度學習NumPyPyTorch

2018-05-04 08:57:00

LinuxWindows共享文件

2018-06-26 08:55:35

LinuxWindows共享文件

2024-01-29 00:57:20

GuavaJava拷貝

2013-01-04 17:10:10

Android開發dppx

2019-07-08 08:59:41

Docker容器主機

2022-05-03 10:08:53

WindowsLinux文件共享

2021-01-05 10:41:07

遠程工作CIO首席信息官

2020-03-27 15:10:23

SpringJava框架

2009-06-25 15:20:28

CollectionMap

2010-03-18 14:16:52

Java Thread

2025-01-20 08:40:00

Python對象

2020-10-27 08:24:01

Java

2022-12-15 16:23:32

JavaScrip字符串開發

2023-06-27 09:00:00

2016-08-11 08:24:39

AndroidIntentShareTestDe

2022-12-25 16:15:38

HTMLJava可視化文檔
點贊
收藏

51CTO技術棧公眾號

黄色网页在线看| 国产精品久久久久久人| 伊人久久影院| 精品久久久久久久久国产字幕| 免费影院在线观看一区| 91超薄丝袜肉丝一区二区| 欧美精品入口| 一区二区三欧美| 91精品久久久久久久久久入口| 美女网站视频色| 久久久久久久久久久久久久久久久久久久| 日韩欧美中文在线| 99亚洲国产精品| 国产在线一二三区| 国产xxx精品视频大全| 国产激情999| 日本少妇性生活| 久久久久国产| 在线精品国产欧美| 中文乱码人妻一区二区三区视频| 色诱色偷偷久久综合| 欧美日韩亚洲一区二区| www国产无套内射com| 69久久久久| 久久久精品2019中文字幕之3| 99国产精品久久久久老师| 国内av在线播放| 国产亚洲激情| 久久久免费精品视频| 黄色一级大片在线免费观看| 国产成人精品三级高清久久91| 精品噜噜噜噜久久久久久久久试看| 国产v亚洲v天堂无码久久久| 黄色激情在线播放| 亚洲成在线观看| 欧美三级午夜理伦三级老人| 最新电影电视剧在线观看免费观看| 26uuu色噜噜精品一区二区| aaa级精品久久久国产片| 一区二区www| 青青草国产精品亚洲专区无| 国产成人jvid在线播放| 亚洲精品男人天堂| 国产精品美女| 欧美与黑人午夜性猛交久久久| 国产一级久久久| 欧美久久影院| 欧美精品久久久久| 国产精品白浆一区二小说| 欧美日韩 国产精品| 久久躁日日躁aaaaxxxx| 色欲一区二区三区精品a片| 999精品在线| 久久精品国产一区二区电影| 免费黄色激情视频| 国产精品88久久久久久| 久久久国产91| 丁香花五月激情| 欧美一区二区三区久久精品茉莉花| 日韩视频在线免费| 久久久久久久久久网站| 午夜天堂精品久久久久| 欧美激情国内偷拍| 日韩成年人视频| 在线视频日韩| 国产精品成人观看视频国产奇米| 一级久久久久久| 久久精品二区亚洲w码| 成人欧美一区二区三区在线| aaaa一级片| www.亚洲在线| 欧美一区国产一区| 日本网站在线免费观看视频| 亚洲欧美日韩国产综合在线| 999一区二区三区| 成人av影院在线观看| 午夜精品福利视频网站| 丁香婷婷激情网| 欧美一级免费| 精品成人一区二区三区| 好吊日免费视频| 日韩欧美精品| 欧美高清一级大片| www.久久久久久久| 精品无码三级在线观看视频| 国产精品久久国产精品| 国产中文在线| 一区二区三区四区乱视频| 欧美色图另类小说| 亚州精品国产| 亚洲精品suv精品一区二区| 高清国产在线观看| 女人色偷偷aa久久天堂| 欧美主播福利视频| 国产真实乱在线更新| 亚洲视频一二| 久久精品免费电影| 精品在线视频免费| 日本欧美久久久久免费播放网| 91欧美日韩一区| 青梅竹马是消防员在线| 亚洲欧美日韩国产综合| www.国产区| 日韩一级淫片| 中文字幕日韩在线播放| 日本一区二区免费在线观看| 蜜臀久久久99精品久久久久久| 91精品国产综合久久久久久丝袜| 免费播放片a高清在线观看| 亚洲欧美日韩电影| 国产a视频免费观看| 玖玖玖电影综合影院| 亚洲欧美中文日韩在线| 久视频在线观看| 麻豆免费看一区二区三区| 国产精品久久久久久久久婷婷 | 日本日本精品二区免费| 特级毛片在线| 欧美无砖专区一中文字| 国产精品无码在线| 午夜精品久久| 国产欧美一区二区白浆黑人| 牛牛澡牛牛爽一区二区| 亚洲国产精品自拍| 亚洲一区二区偷拍| 区一区二视频| 日韩av电影院| 天堂在线观看视频| 一区二区三区高清在线| 男女污污视频网站| 成人在线一区| 国产精品成人一区二区三区吃奶| 色欲av伊人久久大香线蕉影院| 亚洲人成网站在线| 中文字幕免费高清在线| 欧美日韩在线二区| 日本精品久久久| 日本人妻熟妇久久久久久| 亚洲精品国产一区二区精华液| 天天碰免费视频| 欧美人与拘性视交免费看| 午夜精品久久久久久久白皮肤| 亚洲AV无码一区二区三区少妇 | 日韩精品中文字幕视频在线| 久草视频免费在线| 国产精品91xxx| 日韩不卡一二区| 精品国产亚洲一区二区三区大结局| 国产一区二区三区18| 少妇久久久久久久| 国产视频视频一区| 免费观看成人网| av中文一区| 国产精品视频专区| 成人三级网址| 日韩一区二区视频| 久久婷婷综合国产| 97超碰欧美中文字幕| 免费成人在线视频网站| 欧美人与牛zoz0性行为| 国产精品一区二区三| 91在线网址| 视频一区二区在线播放| 亚洲视频图片小说| 女王人厕视频2ⅴk| 激情欧美丁香| 蜜桃传媒视频麻豆第一区免费观看 | 国产真人做爰毛片视频直播| 久久久免费毛片| 欧美一区二区三区免费视| 可以免费看污视频的网站在线| 91福利在线导航| 日本精品在线免费观看| 国产成人高清在线| 国产中文字幕二区| 欧美日一区二区| 亚洲在线视频观看| 九色porny自拍视频在线播放| 精品亚洲一区二区三区在线观看| 国产偷人爽久久久久久老妇app| 亚洲欧洲韩国日本视频| 精品视频站长推荐| 日韩av一级电影| 欧美日韩视频免费在线观看| 一区二区亚洲视频| 国产99久久精品一区二区永久免费| 五月天婷婷在线视频| 精品捆绑美女sm三区| 国产精品熟女视频| 亚洲综合一二三区| 鲁丝一区二区三区| 久久99九九99精品| 青青草成人免费在线视频| 激情五月综合| 国产激情一区二区三区在线观看 | 亚洲色图国产| 久久久久免费网| 一区二区三区| 欧美在线影院在线视频| 怡红院在线播放| 亚洲欧美日韩精品久久奇米色影视| 国产精品国产三级国产普通话对白| 亚洲国产精品麻豆| 美女三级黄色片| 91小视频免费看| 97免费公开视频| 青青草伊人久久| 日韩欧美一区二| 91精品久久久久久久久久不卡| 精品中文字幕人| 日韩不卡在线视频| 国产精品一区二区久久精品| 7777kkk亚洲综合欧美网站| 色婷婷综合成人| 黄色国产在线| 亚洲精品91美女久久久久久久| 国产绿帽刺激高潮对白| 日本精品一级二级| 五月天综合激情| 亚洲午夜在线电影| 午夜国产小视频| 国产三级精品在线| 香蕉视频黄色在线观看| 国产99久久久久久免费看农村| 色啦啦av综合| 蜜桃免费网站一区二区三区| 99999精品视频| 亚洲国产裸拍裸体视频在线观看乱了中文 | 日本黄色免费观看| 国产精品亚洲а∨天堂免在线| 一区二区三区入口| 三级一区在线视频先锋| 欧洲黄色一级视频| 国产日韩专区| 黄色av网址在线播放| 99热这里只有成人精品国产| 草草视频在线免费观看| 欧美日韩国产高清| 熟女视频一区二区三区| 999成人网| 伊人婷婷久久| 亚洲91精品| 国产精品波多野结衣| 亚洲精品tv久久久久久久久久| 亚洲欧洲精品一区二区| 久久一级电影| 久久免费看毛片| 在线观看国产精品入口| 福利网在线观看| 综合天堂久久久久久久| xxxxxx在线观看| 欧美a级在线| 97碰在线视频| 一本一道久久综合狠狠老精东影业| 热99这里只有精品| 国产精品亚洲欧美| 男女午夜激情视频| 日韩在线观看一区二区| 手机在线看福利| 精品中文字幕一区二区| 999热精品视频| 国产91精品免费| 国产又黄又粗又猛又爽的视频| 久久伊人蜜桃av一区二区| 日韩精品在线中文字幕| 欧美色图麻豆| 国产中文字幕在线免费观看| 国产女优一区| 男人天堂成人在线| 九色|91porny| 中文字幕制服丝袜| 99久久夜色精品国产网站| 精品成人av一区二区三区| 欧美国产成人精品| 538任你躁在线精品视频网站| 亚洲午夜电影在线观看| 久久精品视频1| 欧美裸体bbwbbwbbw| 亚洲黄色a级片| 亚洲欧美国产一区二区三区| eeuss影院在线播放| 欧美大码xxxx| 天堂av中文在线观看| 国产精品久久久一区| 日本超碰一区二区| 久久综合中文色婷婷| 国产精品国产一区| 亚洲人成无码网站久久99热国产 | 久久久久久久久久久妇女| 福利视频免费在线观看| 丝袜亚洲另类欧美| 性生活在线视频| 久久久99精品免费观看不卡| 永久免费看黄网站| 色综合色狠狠天天综合色| av 一区二区三区| 亚洲欧洲xxxx| 国产美女情趣调教h一区二区| 国产91在线视频| 国产精品久久久久av蜜臀| 性欧美.com| 国产一区二区三区的电影| www.国产视频.com| 久久嫩草精品久久久久| 青娱乐国产精品| 欧美亚洲动漫精品| 天天干视频在线观看| 日日骚久久av| 超碰一区二区| 国产精品加勒比| 中国成人一区| 日本中文字幕精品—区二区| av资源站一区| 欧美成人黄色网| 欧美揉bbbbb揉bbbbb| 国产精品国产高清国产| 欧美成人精品xxx| 国产精品黄色片| 欧洲亚洲一区| 午夜在线视频一区二区区别| 国产精品久久久久野外| 国产精品久久久久久亚洲毛片| 91精品国产高清一区二区三密臀| 欧美α欧美αv大片| 欧美成人精品一区二区男人看| 国产成人97精品免费看片| 天堂在线精品| 青青青在线视频播放| 国产福利91精品一区| 天堂av免费在线| 欧美在线啊v一区| 蜜桃成人在线视频| 亚州av一区二区| 国产精品18hdxxxⅹ在线| 久久av高潮av| 国产很黄免费观看久久| 农村黄色一级片| 日韩一区二区中文字幕| gogo在线观看| 亚洲一区亚洲二区| 影音先锋日韩精品| 永久看看免费大片| 一区二区三区自拍| 国产xxxx在线观看| 久久91亚洲精品中文字幕奶水 | 国产一区二区三区的电影 | 久久久不卡影院| 天天干天天干天天干天天| 日韩精品中文字幕在线观看| 在线免费av资源| 欧美久久久久久久| 久久一日本道色综合久久| 国产高潮呻吟久久| 欧美在线观看18| 天天综合视频在线观看| 91精品综合久久久久久五月天| 国产精品91一区二区三区| 深爱五月综合网| 亚洲影视资源网| 亚洲av毛片成人精品| 国产成人91久久精品| 91影院成人| 青娱乐国产精品视频| 亚洲图片欧美色图| 日色在线视频| 国产精品亚洲美女av网站| 9191国语精品高清在线| 国产人妻精品午夜福利免费| 精品国产91久久久| 极品美乳网红视频免费在线观看| 国产精品免费久久久久久| 99久久这里只有精品| 亚洲少妇一区二区三区| 岛国av一区二区三区| 成人精品一区二区三区免费| 成人网在线观看| 中文精品在线| 手机av在线不卡| 日韩免费视频一区| 中文字幕在线视频久| 一区二区视频在线观看| 国产成人aaa| 国产又粗又猛又黄视频| 久久亚洲电影天堂| 日韩美女国产精品| 国产美女视频免费看| 精品久久久国产| 久操视频在线| 美乳视频一区二区| 国产乱色国产精品免费视频| 国产www在线| 九九久久综合网站| 国产欧美日韩精品一区二区免费 | 日本欧美高清| 日本免费色视频| 欧美视频在线观看免费| 主播国产精品| 日韩精品久久久毛片一区二区| 国产成人精品三级| 中文字幕有码视频|