mitaichik
@mitaichik

Spring: Как организовать чтоб объект из БД был в единственном экземпляре?

Всем привет! В java/spring новичек.

В общем, есть сущьность, храниться в mongodb. Сущьность выбирается только по ID. Хочу чтоб был некий менеджер, который бы управлял ей следующим образом:
- при попытке получить сущьность по id он смотрел, была ли эта сущьность загруженна ранее. Если да - отдавал бы тот же инстанс что и по предыдущему запросу, если нет - выбирал бы из БД.
- у менеджера была возможность сохранять ее в БД.
- (желательно) менеджер выгружал бы ее из памяти, если, напрмер, на нее не было запросов в течении 20 минут.
- (желательно) менеджер сам мог понять что сущьность изменилась и нужно скинуть изменения в БД

Я правильно понимаю, что JPA как раз предлагает что-то подобное, или для этого есть какие-либо другие механизмы?
  • Вопрос задан
  • 111 просмотров
Решения вопроса 1
leahch
@leahch
3Д специалист. Долго, Дорого, Дерьмово.
Да, в общем все правильно понимаете. За исключением последнего - записи, когда сущность изменилась. Здесь таки требуется сказать "менеджеру" явно, чтобы он скинул сущность в базу данных, если она изменилась. Это сделано во имя безопасности данных, когда мы изменили сущность, и "менеджер" должен знать, что данные можно уже скинуть, и они непротиворечивые.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы