我知道this问题,但使用org.springframework.data:spring-data-jpa:1.7.0.RELEASE
我仍然遇到同样的问题(Either use @Param on all parameters except Pageable and Sort typed once, or none at all!
)。我的班级是:
public interface BalanceHistoryRepository extends JpaRepository<BalanceHistory, Long> {
@Query("select bh from BalanceHistory bh where bh.account.id = :idAccount")
public BalanceHistory findCurrentBalanceByAccountNumber(PageRequest pageCriteira, @Param("idAccount") long idAccount);
}
修改
呼叫:
Pageable page = new PageRequest(0, 1, Sort.Direction.DESC, "date");
BalanceHistory bh = balanceHistoryRepository.findCurrentBalanceByAccountNumber(1,page);
方法:
@Query("select bh from BalanceHistory bh where bh.account.id = :idAccount")
public BalanceHistory findCurrentBalanceByAccountNumber(@Param("idAccount") long idAccount, Pageable pageCriteira);
答案 0 :(得分:18)
确保使用Pageable
而不是PageRequest
,以便将第一个参数识别为不与实际查询绑定的参数。此外,您需要将返回类型更改为Page
或List
,因为您将主要返回多个结果。
public interface BalanceHistoryRepository extends CrudRepository<BalanceHistory, Long> {
@Query("select bh from BalanceHistory bh where bh.account.id = :idAccount")
Page<BalanceHistory> findCurrentBalanceByAccountNumber(@Param("idAccount") long idAccount, Pageable pageable);
}
这应该可以解决问题。请注意,我们通常建议 not 扩展特定于商店的接口,因为它们会公开特定于商店的API,只有在必要时才会公开。
答案 1 :(得分:0)
当我不小心导入了错误的library(shiny)
ui <- fluidPage(
actionButton('run','Run executable!')
)
server<- function(input,output)
{
observeEvent(input$run,
{
system("cmd.exe", input = "tableau.bat")
})
}
类时,我遇到了相同的异常。
如果您在存储库中也使用Pageable
,也会发生这种情况。
应该是
PageRequest