我正在使用JPA存储库[使用Spring数据]来查询数据库,以便向我返回提交日期之间发生的事件的列表。我有带有以下变量的类,这些变量将用作控制器中的请求正文( @RequestBody ):
// 注意->我的日期必须是字符串
private String initialDate;
private String finalDate;
我将以下值传递给int POSTMAN
{
"initialDate":"2018-09-29",
"finalDate":"2018-09-30"
}
这是我的对应Model类
private String initialDate;
private String finalDate;
private String moreInfo;
private String SomeMoreInfo;
我希望API在这些日期之间返回我的信息,为此我在存储库层中使用以下查询。
@Query("SELECT u from Kitchen u WHERE STR_TO_DATE(u.date, '%a, %c %b %Y %k:%i:%s') between :initial_day AND :final_day")
List<Cozinha> findPlateByDate(@Param("initial_day") String initial_day,@Param("final_day") String final_day);
POSTMAN中出现以下错误[如问题标题中所述]
"message": "Parameter with that position [1] did not exist; nested exception is java.lang.IllegalArgumentException: Parameter with that position [1] did not exist",
netbeans服务器控制台中出现以下错误
Caused by: java.lang.IllegalArgumentException: Parameter with that position [1] did not exist
我的问题是,我在查询吗?我们的语法有误吗?
答案 0 :(得分:0)
此损坏的原因处理字符串文字中的冒号已损坏。
一种解决方法是在查询中将冒号解释为绑定参数时消除它们。