gpt4 book ai didi

java - Spring @Query 参数中出现意外的 token ":"

转载 作者:太空宇宙 更新时间:2023-11-04 13:46:02 25 4
gpt4 key购买 nike

我有一个Spring Repository @Query在我的应用程序中使用命名参数:

@Query("SELECT p FROM :person")    
Page<Person> find(@Param("table") String table, Pageable pageable);

还有一个 Controller 来处理请求/查询表(:table)

@RequestMapping(value = "/search/{table}", produces="application/json", method = RequestMethod.GET) 
public Page<Person> searchTables(@PathVariable String table) {
return Page<Person> list = repo.find(table, new PageRequest(1, 20));
}

存储库和请求映射工作正常,因此我省略了它们,但出现以下异常:

Caused by: org.hibernate.hql.internal.ast.QuerySyntaxException: unexpected token: : near line 1, column 15 [SELECT p FROM :table]

根据 Spring 文档,这就是 @Query 命名参数如何以 : 为前缀,所以我不确定为什么会收到此错误。

来自文档:

...you can use @Param annotation to give a method parameter a concretename and bind the name in the query.

有什么想法吗?

最佳答案

关于java - Spring @Query 参数中出现意外的 token ":",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30836618/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com