我想只将一部分数据返回给客户端。即使用投影。有些文档暗示查询可以返回投影,但我得到如下所示的错误。如果我更改查询以返回供应商实体,那么一切正常。
java.lang.IllegalArgumentException: PersistentEntity must not be null!
查询:
Page<SupplierLookupProjection>
findByApSupplierCodeContainsIgnoreCaseOrAdminAddressContainsIgnoreCaseOrderByApSupplierCodeAsc(Pageable pageable, @Param("code") String code, @Param("description") String description);
存储库:
public interface SupplierRepository extends PagingAndSortingRepository<Supplier, Long>
答案 0 :(得分:0)
在不查看SupplierLookupProjection
如何实现的情况下,我相信您可能错过了将SupplierLookupProjection
定义为投影界面。
如果是,请将SupplierLookupProjection
定义为您感兴趣的字段getters
的投影界面。
例如:假设,如果您只想name
location
Supplier
字段,则可以使用以下内容仅定义投影界面:
interface SupplierLookupProjection {
String getName();
String getLocation();
}
您可以参考Spring Data JPA projections了解更多示例。