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.
不知道理解對不對。希望有懂的同學講解一下。
相關文章:
