Spring Data Rest 和 Oracle Between 2 dates query 什么都不给

Spring Data Rest and Oracle Between 2 dates query giving nothing

Spring Data rest 无法从数据库 table.

中获取 2 个日期之间的数据
Collection<XXXX> findByCreatedOnBetween(LocalDate fromDate, LocalDate todayDate);
From Bean 
private LocalDate createdOn;
Collection<XXXX> findByCreatedOnBetween(LocalDate fromDate, LocalDate todayDate);
private LocalDate createdOn;

我想要两个日期之间的数据:

SELECT
*
FROM
testing testing
WHERE
testing.created_on BETWEEN ? AND ? ;

我相信 Spring Data Rest 默认只接受 ISO 8601 日期格式(如 2018-10-22)。

如果您想接受不同格式的日期,您需要添加一个转换器。

@Configuration
public class RepositoryRestConfig extends RepositoryRestConfigurerAdapter {

    @Autowired
    CustomDateConverter customDateConverter;

    @Override
    public void configureConversionService(ConfigurableConversionService conversionService) {
        conversionService.addConverter(customDateConverter);
        super.configureConversionService(conversionService);
    }
}


@Component
public class CustomDateConverter implements Converter<String, LocalDate > {

    @Override
    public LocalDate convert(String source) {
        return LocalDate.from(DateTimeFormatter.ofPattern("dd-MMM-yy").parse(source));
    }
}