Будет ли Hibernates Session.get () попадать в базу данных оба раза или только один раз? - PullRequest
0 голосов
/ 08 июня 2019

Когда мы используем Session.get () Hibernate два раза.

Пример: -

session.get();
session.get();

1 Ответ

0 голосов
/ 08 июня 2019

Это зависит ..

1) Если для определенной сущности включен кэш второго уровня и он был получен ранее, попадание в базу данных не будет.

2) Если оба get() НЕ находятся в одном и том же контексте постоянства (обычно это означает, что в одной и той же транзакции), то оба раза произойдет попадание в базу данных.

3) Если оба находятся в одном и том же контексте постоянства, то первый get() попадет в базу данных, а второй запросит только контекст сохранения без необходимости запрашивать базу данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...