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能正常得到数据,但是用这种方式每次都是获取为空,请问有人知道怎么解决吗?
单个对象获取没问题,就是数据集有问题
问题解答
回答1:自己来解答吧,还是RestTemplate配置的问题。stackoverflow上的解答
PagedResources没有_embedded属性,导致无法获得content.
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
这段配置看样子是把字段不匹配就解析失败功能干掉了,类似@JsonIgnoreProperties.
不知道理解对不对。希望有懂的同学讲解一下。
相关文章:

网公网安备