У меня есть пользовательский объект, представленный в JPA, который имеет определенные подтипы.Например, представьте себе пользователя, а затем администратора подкласса и другого опытного пользователя подкласса.
Допустим, у меня есть 100 тыс. Пользователей.Я успешно реализовал кэш второго уровня с использованием Ehcache, чтобы повысить производительность, и подтвердил, что он работает.http://docs.jboss.org/hibernate/core/3.3/reference/en/html/performance.html#performance-cache
Я знаю, что это работает (т. Е. Вы загружаете объект из кэша, а не вызываете SQL-запрос) при вызове метода загрузки.Я проверил это, войдя в систему на уровне гибернации, а также убедившись, что это быстрее.
Однако я на самом деле хочу выбрать подмножество всех пользователей ... например, скажем, я хочу сделатьподсчет количества продвинутых пользователей.
Кроме того, у моих пользователей есть связанный объект ZipCode ... объекты ZipCode также кэшируются на втором уровне ... что я хотел бы сделать, так это фактически иметь возможностьзадавать запросы вроде ... сколько опытных пользователей у меня в штате Нью-Йорк ...
Однако мой вопрос ... как мне написать запрос для этого, который попадет в кэш второго уровняа не база данных.Обратите внимание, что мой кэш второго уровня настроен для чтения / записи ... поэтому, когда новые пользователи добавляются в систему, они должны автоматически добавляться в кэш ... также ... обратите внимание, что я кратко исследовал кэш запросов, ноЯ не уверен, что это применимо, так как это относится к запросам, которые запускаются несколько раз ... моя проблема скорее в случае ... данные все равно должны быть в кэше второго уровня, так что мне нужно сделать, чтобыбаза данных не попала, когда я пишу свой запрос.
ура, Брайан