首页  >  问答  >  正文

java - spring data rest + restTemplate 构建数据读写服务时无法获取数据集合

客户端:

ParameterizedTypeReference<PagedResources<Pass>> responseType =
                new ParameterizedTypeReference<PagedResources<Pass>>() {};
PagedResources<Pass> passes =restTemplate.exchange(uri, HttpMethod.GET, null, responseType).getBody();

服务端:

@RepositoryRestResource(collectionResourceRel = "pass", path = "pass")
public interface PassRepository extends JpaRepository<Pass,String> {
    List<Pass> findByCarPlate(@Param("carPlate")String carPlate);
}

网页输入uri能正常得到数据,但是用这种方式每次都是获取为空,请问有人知道怎么解决吗?

单个对象获取没问题,就是数据集有问题

过去多啦不再A梦过去多啦不再A梦2686 天前697

全部回复(1)我来回复

  • 世界只因有你

    世界只因有你2017-06-12 09:29:10

    自己来解答吧,还是RestTemplate配置的问题。
    stackoverflow上的解答

    PagedResources没有_embedded属性,导致无法获得content.

    objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
    

    这段配置看样子是把字段不匹配就解析失败功能干掉了,类似@JsonIgnoreProperties.

    不知道理解对不对。希望有懂的同学讲解一下。

    回复
    0
  • 取消回复