很早之前在使用FashJson进行实体类转化的时候,如果json参数是多层都是一层对应一个单独的实体类,
今天在项目中想,使用内部类是不是也可以实现,且使用内部类封装性更好。当将json串使用fastjson的pareseObject方法
进行解析的时候报错:
com.alibaba.fastjson.JSONException: create instance error,
在网上搜了下发现内部类无法实例化,导致fastjson反序列化失败。
解决方法:
阅读该文:
Java嵌套类与内部类
https://blog.csdn.net/xktxoo/article/details/78175909
由Java嵌套类与内部类一文分析可知,非静态成员嵌套类的实例化依赖于外部类实例,而静态嵌套类的实例化不依赖于外部类,将内部类改为静态嵌套类即可。或将内部类单独拿出创建类也可以的。