json数据怎么转换成实体类?
问题描述:
[ERROR] [http-nio-9876-exec-4] [org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/].[dispatcherServlet]] [Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is java.lang.ClassCastException: com.alibaba.fastjson.JSONArray cannot be cast to java.lang.String] with root cause]
java.lang.ClassCastException: com.alibaba.fastjson.JSONArray cannot be cast to java.lang.String
错误信息,是类型转换错误。
String result = yxOpenApiService.handleGetItemsById(itemIds).getResult();
CommodityInformationInquiryResult commodityInformationInquiryResult=JSON.parseObject(result,CommodityInformationInquiryResult.class);
我使用自动提示,自动String类型接收,使用jsonarray报错??
答
好,解决了就行,只看到两行代码我也是猜的
答
result是一个jsonArray的字符串形式,下面应该用
List<CommodityInformationInquiryResult> commodityInformationInquiryResults = JSON.parseArray(result,CommodityInformationInquiryResult.class);
试试看
答
是获取的数据和实体类的转换错误,实体类中有实体类,复杂类型,JSONObject就可以
答
嗯嗯,谢谢你了。