【发布时间】:2022-01-14 15:24:40
【问题描述】:
我正在向 WooCommerce API 发出 GET 请求以获取订单,我的想法是从响应中获取一些数据并将其插入本地数据库。我测试了请求,一切正常。所以我继续使用 QuickType 能够创建对应于响应的类,所以我有办法将它保存并插入到数据库中。问题如下,如果我注释“for”语句,没有问题。但是在使用它来获取答案的值并将它们插入数据库的那一刻,就会出现这个错误: 类 java.util.LinkedHashMap 不能转换为类 [我的类的名称]。 并且: [我的班级]在加载器 org.springframework.boot.devtools.restart.classloader.RestartClassLoader 的未命名模块中。你能帮我找到解决这个问题的方法吗? 代码如下:
@GetMapping("/ordenes")
public List<WcOrden> getOrdenes() {
List<WcOrden> ordenes = (List<WcOrden>) wc.getAll(EndpointBaseType.ORDERS.getValue(), params);
for (WcOrden orden : ordenes) {
log.debug("This is an order");
}
return ordenes;
}
【问题讨论】:
-
wc.getAll方法返回什么?如果它返回类似java.util.LinkedHashMap的内容,那么您不能将其转换为List<WcOrden>对象,因为LinkedHashMap不是List。 -
wc.getAll返回一个 List,但List getAll(String endpointBase, Map<String, String> params);内部没有泛型类型所以我认为如果它返回一个 List,我可以将它转换为 List对吗?
标签: java spring spring-boot jackson