JPA: Как я синхронизирую контекст персистентности с результатом массового обновления или удаляю?

При тестировании в ASP.NET мы сохраняем наши электронные письма к папке, скорее затем отправляют их через почтовый сервер. Возможно, Вы могли изменить Ваш web.config настройки как это для Вашего пакета?


  
    
      
    
  

Дополнительная Информация:

5
задан digitaljoel 23 September 2009 в 23:15
поделиться

1 ответ

Вы должны быть осторожны с тем, как вы используете здесь слово «кеш», поскольку оно может означать разные вещи.

Выделенная фраза говорит о контексте персистентности, который можно рассматривать как «кеш 1-го уровня». Чтобы обновить его последними изменениями из базы данных, вы можете:

  1. Вызвать EntityManager.refresh () , чтобы обновить состояние одиночного объекта.
  2. ИЛИ отменить Экземпляр диспетчера сущностей в целом (после сброса / очистки соответствующих изменений) и получить новый из фабрики диспетчеров сущностей. Любые сущности, которые вы загружаете из этого нового экземпляра, будут загружены из базы данных и, таким образом, будут содержать последние изменения.

Тогда также может быть «кеш 2-го уровня», который не привязан к конкретному менеджеру сущностей. Вы можете его обновить (а точнее,

5
ответ дан 13 December 2019 в 19:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: