在两个日期之间调用查询将返回一个空数组,但它不应该。JPA Spring存储库日期筛选返回空数组
我用这“简单”春天库:
import java.time.LocalDate;
import java.util.List;
import org.springframework.data.repository.CrudRepository;
import com.company.app.domain.DailySales;
public interface DailySalesRepo extends CrudRepository<DailySales, Long> {
public List<DailySales> findByDateBetween(LocalDate start, LocalDate end);
}
我调用我的服务范围内的方法:
public class ImplSalesService implements SaleService {
private static final long serialVersionUID = 1L;
protected final Log logger = LogFactory.getLog(getClass());
@Autowired
private DailySalesRepo dailySalesRepo;
public List<DailySales> getDailySales(LocalDate start, LocalDate end) {
logger.debug("getDailySales with params start/end: " + start.toString() + "/" + end.toString());
List<DailySales> result = dailySalesRepo.findByDateBetween(start, end);
return result;
}
}
我知道Hibernate是获得权利的参数,因为我可以看到日志:
Hibernate: select dailysales0_.id as id1_0_, dailysales0_.amount as amount2_0_, dailysales0_.currency as currency3_0_, dailysales0_.date as date4_0_, dailysales0_.tenantId as tenantId5_0_ from agg_dailysells dailysales0_ where dailysales0_.date between ? and ?
10:16:03,674 TRACE BasicBinder:83 - binding parameter [1] as [VARBINARY] - 2016-02-01
10:16:03,682 TRACE BasicBinder:83 - binding parameter [2] as [VARBINARY] - 2016-05-12
并将该跟踪复制到SQL控制台返回101个项目:
select dailysales0_.id as id1_0_, dailysales0_.amount as amount2_0_, dailysales0_.currency as currency3_0_, dailysales0_.date as date4_0_, dailysales0_.tenantId as tenantId5_0_ from agg_dailysells dailysales0_ where dailysales0_.date between "2016-02-01" and "2016-05-12";
结果:101行(S)返回
但List<DailySales> result
得到一个空列表。
我在做什么错?
我的实体的样子:
@Entity
@Table(name="agg_dailysells")
public class DailySales implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer id;
private Integer tenantId;
private LocalDate date;
private Double amount;
private Integer currency;
... getters and setters go here ...
哪个版本的hibernate和Spring Data? –
我正在使用org.hibernate:hibernate-entitymanager:4.2.0.Final和org.springframework.data:spring-data-jpa:1.9.4.RELEASE – BlackBishop
@BlackBishop如果它仍然相关看看我的答案。 – mirmdasif