Spring 数据休息存储库关键字或
Spring data rest repository keyword OR
我有一个对象,其属性在名称中包含 OR。
Or 也是 spring 数据剩余中的关键字,用于连接存储库中的 属性 表达式。
我有一个名为 Instance 的对象,其属性为 instanceOrUrlId。
我希望能够通过使用此属性进行搜索来查询实例。
通常我会说:
findInstanceByInstanceOrUrlId.
我该怎么做才能指定 OR 在 属性 中并且不用于合并属性?
您不将 JPQL 查询与 spring 数据存储库一起使用的内容如下:
@Query("SELECT messageEntity FROM StandardMessageEntity messageEntity " +
" WHERE messageEntity.standardMessageKey.messageType = :instanceOrUrlId" +
" AND messageEntity.activeMessage = true")
List<StandardMessageEntity> findInstanceByInstanceOrUrlId(@Param("instanceOrUrlId") String instanceOrUrlId);
以上只是一个示例,只需创建一个方法并使用 @Query
定义一个 jpql 查询,就可以了。使用你想要的方法的名称,然后使用你想要的 属性 创建 select,使用 @Param
在其上设置命名参数,你可以收到一个 List<Entity>
或 Entity
,如您所愿。
我有一个对象,其属性在名称中包含 OR。 Or 也是 spring 数据剩余中的关键字,用于连接存储库中的 属性 表达式。
我有一个名为 Instance 的对象,其属性为 instanceOrUrlId。
我希望能够通过使用此属性进行搜索来查询实例。 通常我会说: findInstanceByInstanceOrUrlId.
我该怎么做才能指定 OR 在 属性 中并且不用于合并属性?
您不将 JPQL 查询与 spring 数据存储库一起使用的内容如下:
@Query("SELECT messageEntity FROM StandardMessageEntity messageEntity " +
" WHERE messageEntity.standardMessageKey.messageType = :instanceOrUrlId" +
" AND messageEntity.activeMessage = true")
List<StandardMessageEntity> findInstanceByInstanceOrUrlId(@Param("instanceOrUrlId") String instanceOrUrlId);
以上只是一个示例,只需创建一个方法并使用 @Query
定义一个 jpql 查询,就可以了。使用你想要的方法的名称,然后使用你想要的 属性 创建 select,使用 @Param
在其上设置命名参数,你可以收到一个 List<Entity>
或 Entity
,如您所愿。