SpringCloud实战之Feign笔记

遇到问题

在服务提供者中如果返回值是复杂对象(嵌套其他对象),例如:

public class SPResponse {
  private String statusCode;
  private Object Data;
  /** 省略 getter 和 setter */
}

这种情况下,服务调用者调用时,得到的返回结果SPResponse,通过getData()拿到的数据强转为对应对象时会报错java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to ...

解决方案就是采用泛型,例如:

public class SPResponse<T> {
  private String statusCode;
  private T Data;
  /** 省略 getter 和 setter */
}

推荐阅读更多精彩内容