Spring数据休息库关键字OR

时间:2015-02-18 17:25:12

标签: spring spring-boot spring-data

我有一个对象,其属性在名称中包含OR。 或者也是spring数据休息中的关键字,用于连接存储库中的属性表达式。

我有一个名为Instance的对象,其属性为instanceOrUrlId。

我希望能够通过使用此属性进行搜索来查询实例。 通常我会把: findInstanceByInstanceOrUrlId。

如何指定OR在属性中并且不用于组合属性?

1 个答案:

答案 0 :(得分:1)

您不使用JPQL查询与弹簧数据存储库如下:

@Query("SELECT messageEntity FROM StandardMessageEntity messageEntity " +
        " WHERE messageEntity.standardMessageKey.messageType = :instanceOrUrlId" +
        " AND messageEntity.activeMessage = true")
List<StandardMessageEntity> findInstanceByInstanceOrUrlId(@Param("instanceOrUrlId") String instanceOrUrlId);

上面只是示例,只需创建一个方法并使用@Query来定义一个可行的jpql查询。使用您想要的方法的名称,只需使用您想要的属性创建选择,使用@Param在其上设置命名参数,您可以收到List<Entity>Entity,如你所愿。