ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

jsonObeject与hashMap与实体类之间的互转

2021-03-04 19:03:01  阅读:297  来源: 互联网

标签:实体类 hashMap Pet jsonObject JSON petName 互转 import


直接用代码来演示吧

pet.class

import lombok.Data;
import lombok.Getter;
import lombok.Setter;

@Getter
@Setter
public class Pet {


    private String petId;

    private String petName;

    private Integer breed;

    private List<String> objectList;

    @Override
    public String toString() {
        return "Pet{" +
                "petId='" + petId + '\'' +
                ", petName='" + petName + '\'' +
                ", breed=" + breed +
                ", objectList=" + objectList +
                '}';
    }
}

pet.class

public class demo {
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.springboot.domain.RelBillIssue;
import com.springboot.entity.Pet;
import lombok.SneakyThrows;
import org.apache.commons.lang3.time.DateFormatUtils;
import org.assertj.core.util.Strings;
import org.json.JSONException;
import org.junit.Test;
import org.springframework.test.annotation.IfProfileValue;
import org.springframework.util.CollectionUtils;

    @Test
    public void hashMapToList3(){
    //hashmap
    HashMap hashMap = new HashMap();
    hashMap.put("petId","aaa");
    hashMap.put("petName","petName");
    hashMap.put("breed",1111);
    //jsonObject
    JSONObject jsonObject = new JSONObject();
    jsonObject.put("petId","aaa");
    jsonObject.put("petName","petName");
    jsonObject.put("breed",1111);
    List<String> list = new ArrayList<>();
    list.add("aaa");
    list.add("bbb");
    list.add("ccc");
    jsonObject.put("objectList",list);
    hashMap.put("objectList",list);
    JSONObject jsonObject1 = new JSONObject();
    jsonObject1.put("petId","aaa");
    jsonObject1.put("petName","petName");
    jsonObject1.put("breed",1111);
    List<String> list1 = new ArrayList<>();
    list1.add("aaa");
    list1.add("bbb");
    list1.add("ccc");
    jsonObject1.put("objectList",list1);
    Pet pet = JSON.toJavaObject(jsonObject,Pet.class);
    //hashMap转jsonObject
    JSONObject fromHashMap = (JSONObject) JSON.toJSON(hashMap);
    Pet pet1 = JSON.toJavaObject(fromHashMap,Pet.class);
    System.out.println("jsonObjectPet:"+pet);
    System.out.println("hashMapPet:"+pet1);
    }

后台打印结果

jsonObjectPet:Pet{petId='aaa', petName='petName', breed=1111, objectList=[aaa, bbb, ccc]}
hashMapPet:Pet{petId='aaa', petName='petName', breed=1111, objectList=[aaa, bbb, ccc]}

简而言之

hashMap转jsonObject:
import com.alibaba.fastjson.JSON;
JSONObject fromHashMap = (JSONObject) JSON.toJSON(hashMap);

hashMap转实体类:
import com.alibaba.fastjson.JSON;
JSONObject fromHashMap = (JSONObject) JSON.toJSON(hashMap);
Pet pet1 = JSON.toJavaObject(fromHashMap,Pet.class);
或者
Pet pet1 = JSON.toJavaObject((JSON) JSON.toJSON(hashMap),Pet.class);

jsonObject转实体类:
import com.alibaba.fastjson.JSON;
Pet pet = JSON.toJavaObject(jsonObject,Pet.class);

jsonObject转hashMap:
import com.alibaba.fastjson.JSON;
HashMap hashMap1 = (HashMap) JSONObject.parseObject(jsonObject.toJSONString(), new TypeReference<Map<String, String>>(){});

标签:实体类,hashMap,Pet,jsonObject,JSON,petName,互转,import
来源: https://blog.csdn.net/qq_34246965/article/details/114374516

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有