【发布时间】:2018-06-07 00:29:25
【问题描述】:
例如,我有一个具有以下属性的实体:
@Entity
public class MyObj {
public String nameOrId;
}
然后我继续创建存储库
public interface MyObjRepository extends JpaRepository<MyObj, String> {
MyObj findByNameOrId(String nameOrId);
}
这失败了,因为似乎 Spring 将方法名称标记为 findBy Name Or Id,而不是 findBy nameOrId。
产生的错误是“名称”属性未找到(或类似)。
有没有办法转义方法语法中的特殊词(“Or”、“And”等)?将列重命名为不包含这些单词不是一种选择。
【问题讨论】:
-
我不确定你是否可以在你的方法语法中转义那种特殊的词。您可能必须在您的方法之上添加一个
@Query注释,以便为 JpaRepository 提供您想要执行的查询
标签: java spring-data-jpa