Возможно ли использовать JPA для потоковой передачи результатов из javax.persistence.Query.getResultList ()? - PullRequest
3 голосов
/ 23 февраля 2010

Я новичок в JPA, и я хотел бы знать, возможно ли передавать данные из набора результатов, я имею в виду, что я не хочу ждать, пока выполняется запрос, чтобы начать работать с первыми результатами, например в случае партии.

Существует ли какая-либо возможность использования JPA API или альтернативного решения, принятого сообществом? Возможно ли использовать функцию реализации JPA?

Ответы [ 3 ]

1 голос
/ 23 февраля 2010

По очевидным причинам выбор «мастера» должен завершиться до того, как что-либо будет сделано в наборе результатов. Я не уверен, чего вы здесь добиваетесь ... Возможно, вам нужно сделать некоторые поля ленивыми, чтобы быстрее получить первый результат и получать детали по мере их обработки?

1 голос
/ 23 февраля 2010

Является ли использование аннотации @ javax.persistence.PostLoad приемлемым для вас? Таким образом, вы можете подключить действие к моменту, когда данный объект создается из хранилища данных. Я не уверен, что это именно то, что вы ищете.

0 голосов
/ 01 марта 2019

Вы можете использовать реальные потоки на JPA:

public interface UserRepository extends JpaRepository<User, Integer> {
    // ...
    Stream<User> findAllByName(String name);
    // ...
}

Вы можете найти больше примеров в этой хорошей статье .

...