-
Notifications
You must be signed in to change notification settings - Fork 1
Построение запроса в аннотации Query #3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
проверил кейс с новым релизом 1.4. Запрос с аннотацией @query отрабатывает корректно |
Так же теперь можно использовать SpEL выражения в запросах, например чтобы передавать объект с параметрами целиком и обращаться к нужным полям в запросе, пример: @Query("SELECT * FROM items WHERE id = :#{#item.id} AND name = :#{#item.name} AND value = :#{#item.value}")
Optional<TestItem> findOneItem(TestItem item); Я постараюсь сегодня-завтра обновить readme, и добавить туда побольше примеров, пока что можно посмотреть примеры использования в тестах. |
забыл проверить, Speсification поддерживается? |
Сам по себе TestItem testItem = new TestItem();
testItem.setValue("Test");
List<TestItem> foundItems = this.repository.findAll(Example.of(testItem, ExampleMatcher.matching()
.withMatcher("value", ExampleMatcher.GenericPropertyMatcher.of(ExampleMatcher.StringMatcher.STARTING)))); Объект Отдельно отмечу, что условия по полям вложенных объектов так же поддерживаются, для того чтобы переопределить значение поля вложенного объекта в TestItem testItem = new TestItem();
testItem.setValue("Test");
TestNestedItem nestedItem = new TestNestedItem();
nestedItem.setName("Value");
testItem.setNestedItem(nestedItem);
List<TestItem> foundItems = this.repository.findAll(Example.of(testItem, ExampleMatcher.matching()
.withMatcher("nestedItem.name", ExampleMatcher.GenericPropertyMatcher.of(StringMatcher.ENDING))
.withMatcher("value", ExampleMatcher.GenericPropertyMatcher.of(ExampleMatcher.StringMatcher.STARTING)))); Если нужно более гибкое управление созданием запроса, то в |
Было бы здорово сделать возможным писать запросы используя JPQL.
@query("from TaskView t where t.name = 'Task_2')
The text was updated successfully, but these errors were encountered: