Можно ли использовать JPA-репозиторий и Ignite-репозиторий одновременно? - PullRequest
0 голосов
/ 12 марта 2020

Я хочу использовать репозиторий JPA и репозиторий Ignite для CRUD-данных. Кроме того, я хочу соединить базу данных Ignite в памяти с RDB (например, mysql, mariaDB, postgresql, ..).

Можно ли одновременно использовать репозиторий JPA и репозиторий Ignite? Если это возможно, я надеюсь узнать, как их сделать.

Средства Iginte Respository, интерфейс IgniteRepository. Например,

@RepositoryConfig(cacheName = "DogCache")
public interface DogRepository extends IgniteRepository < Dog, Long > {
 List < Dog > getDogByName(String name);
 Dog getDogById(Long id);
}

1 Ответ

0 голосов
/ 12 марта 2020

Да, это должно работать.

Важным является имя кэша (в вашем случае DogCache). Как только вы узнаете имя кэша Ignite, вы можете получить к нему доступ через любой API, например, JPA, Spring Data, Cache API, SQL (если для этого кэша настроено индексирование), REST, et c, et c.

Если JPA и Spring Data настроены на использование одного и того же кэша и для доступа к нему используются одни и те же POJO, они должны работать вместе.

Конечно, если у одного из них есть такие вещи, как 2nd кэш уровня, они могут go несинхронно c, но это произойдет за пределами Apache зоны ответственности Ignite.

Пожалуйста, прочитайте сообщение в блоге о Ignite JPA , чтобы понять как имя кэша отображается в хранилище.

...