Встречается на собеседованиях • сегодня
Как получить данные по условию в Spring Data JPA
В Spring Data JPA для получения данных по условию можно использовать:
1. Нативные методы репозитория (Query Creation):
```java
List findByAgeGreaterThan(int age);
```
2. Аннотацию `@Query` для JPQL:
```java
@Query("SELECT u FROM User u WHERE u.age > :age")
List findUsersOlderThan(@Param("age") int age);
```
3. Аннотацию `@Query` с native SQL:
```java
@Query(value = "SELECT * FROM users WHERE age > ?1", nativeQuery = true)
List findUsersOlderThanNative(int age);
```
4. Specification API для сложных динамических запросов:
```java
Specification ageGreaterThan(int age) {
return (root, query, cb) -> cb.gt(root.get("age"), age);
}
```
5. QueryDSL для типобезопасных запросов.
Пример вызова:
```java
userRepository.findByAgeGreaterThan(18);
```

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы