通常会使用fastjson将json字符串转换,可参考文章。而对于事先不确定的类型,则需要使用泛型方式进行对象的转换。

使用泛型定义json字符串转对象的方法:

    public static <T> T jsonParse(Object obj, Class<T> clazz) {
        if (null != obj) {
            //使用泛型方式转换对象
            return JSON.parseObject(JSON.toJSONString(obj), new TypeReference<T>() {
            });
        }
        return null;
    }

在进行转换时使用了TypeReference对象来声明泛型。

进行调用:

 jsonParse(userObj,User.class);

那么在进行对象转换时,指定值及类型即可,可减少重复转换的代码。

当然也可以转换集合,方式如下:

 public static <T> List<T> jsonParseList(Object obj, Class<T> clazz) {
        if (null != obj) {
            //使用泛型方式转换集合
            List<T> list = JSON.parseArray(JSON.toJSONString(obj), clazz);
            return list;
        }
        return null;
    }

使用parseArray方法即可进行转换。

相关文章:

  • 2021-07-22
  • 2021-09-11
  • 2021-05-20
  • 2022-12-23
  • 2021-08-03
  • 2021-07-01
  • 2022-01-23
  • 2021-08-08
猜你喜欢
  • 2021-07-16
  • 2022-12-23
  • 2021-12-09
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案