JSON对象与实体类对象的转换

相信在Java开发的过程中 小伙伴一定遇到不少 JSON转换的问题吧!例如在对接的过程中,小伙伴给你专递的结构体是JSON,而你需要转为实体类。

1、对象转JSON  一般用在日志输出

        JSONObject.toJSONString(Pojo)

        未转换的实体对象打印

    log.info("mapDots:{}", mapDots)
mapDots:[MapDot(dotId=0, mapId=null, dotNum=null, name=Name0, centerX=null, centerY=null, centerZ=null, upHeight=null, avoidType=null, dotType=null, isDisable=null, isDeleted=null, isLocked=null, radius=null, gmtCreate=null, gmtModified=null), MapDot(dotId=1, mapId=null, dotNum=null, name=Name1, centerX=null, centerY=null, centerZ=null, upHeight=null, avoidType=null, dotType=null, isDisable=null, isDeleted=null, isLocked=null, radius=null, gmtCreate=null, gmtModified=null), MapDot(dotId=2, mapId=null, dotNum=null, name=Name2, centerX=null, centerY=null, centerZ=null, upHeight=null, avoidType=null, dotType=null, isDisable=null, isDeleted=null, isLocked=null, radius=null, gmtCreate=null, gmtModified=null)]

        转换的实体类对象打印

       log.info("mapDotsToJSON:{}", JSONObject.toJSONString(mapDots));

mapDots:[{"dotId":0,"name":"Name0"},{"dotId":1,"name":"Name1"},{"dotId":2,"name":"Name2"}]
2、JSON转对象

[
    {
        "dotId": 1,
        "name": "Name0",

         "age": 18
    }
]

 2.1 JSON转单对象

 2.1.1只获取对象的个别属性  举例:获取 dotId

Integer dotId = JSONObject.parseObject(oneMapDot, MapDot.class).getDotId();

Integer dotId1 = JSON.parseObject(oneMapDot, MapDot.class).getDotId();
  2.1.2 转为单对象
// 方法1
MapDot mapDot = JSONObject.parseObject(oneMapDot, MapDot.class);


// 方法2
MapDot mapDot1 = JSON.parseObject(oneMapDot, MapDot.class);

2.2  JSON对象转List<Pojo>

{
    "id":"1",
    "username":"admin",
    "data": [{
        "id": "1",
        "name": "小米手机",
        "price": "1800"
    },{
        "id": "2",
        "name": "菠萝手机",
        "price": "300"
    },{
        "id": "3",
        "name": "苹果",
        "price": "4800"
    }
    ]
}

// JSONObject
 List<MapDot> mapDots1 =
JSONObject.parseArray(responeResult.getData().toString(), MapDot.class);

  • 10
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将 JSON 转换实体类对象,你可以按照以下步骤进行操作: 1. 定义一个与 JSON 对应的实体类,属性名称和 JSON 中的键名称要一致。例如,如果 JSON 中有一个键为 "name",那么实体类中的属性名也应该是 "name"。 2. 使用一个 JSON 解析库,如 Gson、Jackson 等,将 JSON 字符串解析成实体类对象。 下面以使用 Gson 库为例,示范如何将 JSON 转换实体类对象: 1. 首先,确保你在项目中引入了 Gson 的依赖。 2. 假设有如下 JSON 字符串: ```json { "name": "John", "age": 25, "email": "john@example.com" } ``` 3. 创建一个对应的实体类,例如名为 `Person` 的类: ```java public class Person { private String name; private int age; private String email; // 省略构造函数和 getter/setter 方法 } ``` 4. 使用 Gson 进行解析,将 JSON 转换为 `Person` 对象: ```java import com.google.gson.Gson; public class Main { public static void main(String[] args) { String json = "{\"name\":\"John\",\"age\":25,\"email\":\"john@example.com\"}"; Gson gson = new Gson(); Person person = gson.fromJson(json, Person.class); System.out.println(person.getName()); System.out.println(person.getAge()); System.out.println(person.getEmail()); } } ``` 在上述代码中,使用 `fromJson` 方法将 JSON 字符串 `json` 转换为 `Person` 对象,并通过实体类的 getter 方法获取属性值。 这样,你就可以将 JSON 转换实体类对象了。请注意,这只是一种示例方法,具体的实现可能因库或框架的不同而有所差异。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值