gson反序列化成list时,报错

我使用gson反序列化成list<CartRedisDto>时,报错java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING

我CartRedisDto对象是

@Data
public class CartRedisDto {

    private String openId;
    private String productId;
    private Integer quantity;
    private Date createTime;
    private Date updateTime;

}

我使用gson反序列化的代码如下

        String cartRedisString = jedis.get(KEY);
        Type type = new TypeToken<List<CartRedisDto>>() {}.getType();
        List<CartRedisDto> oldCartRedisDtoList = gson.fromJson(gson.toJson(cartRedisString), type);

执行的时候报错
java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 2 path $
请问这个是什么原因

我反序列化的json如下

[
    {
        "openId": "123456",
        "productId": "111111",
        "quantity": 5,
        "createTime": "Nov 8, 2017 11:22:52 PM",
        "updateTime": "Nov 8, 2017 11:22:52 PM"
    }
]
阅读 4.2k
1 个回答
新手上路,请多包涵

再给List<CartRedisDto>创建一个对象就可以解决问题

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题