从Spring Data Jpa查询返回的对象具有空值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从Spring Data Jpa查询返回的对象具有空值相关的知识,希望对你有一定的参考价值。
我正试图从JPA Repository获取自定义类型的对象
visit repository.Java
@Repository
public interface VisitRepository extends JpaRepository<Visit, Long>, JpaSpecificationExecutor<Visit> {
@Query(value = "select client_id , count(*) from visit where (DATE(jhi_date) between :startDate and :endDate) group by client_id",nativeQuery = true)
List<IIntegerReportData> findByDate(@Param("startDate") String startDate, @Param("endDate") String endDate);
I integer report data.Java
package com.mycompany.hiptest.repository;
public interface IIntegerReportData {
Long getId();
Integer getValue();
}
client rating.Java
public List<ClientsRatingDTO> findAllSorted(String startDate, String endDate, Long fieldNum) {
List<IIntegerReportData> visitReport = visitRepository.findByDate(startDate, endDate);
log.debug("visitReport:" + visitReport.size());
for (IIntegerReportData visit : visitReport
) {
log.debug("value: " + visit.getValue());
}
在调试中我得到visitReport.size()= 27(这是正确的记录计数),但是 每个行的visit.getValue()为NULL,但每个行的此字段中没有空值。怎么了?
答案
您可以使用NativeQuery Annotation:
看一下:
https://www.baeldung.com/spring-data-jpa-query
以上是关于从Spring Data Jpa查询返回的对象具有空值的主要内容,如果未能解决你的问题,请参考以下文章
Spring Data JPA:查询如何返回非实体对象或对象列表?
Spring Data JPA:保存嵌套的 OneToMany 子级(具有级联)返回 NULL 父级外部对象