подход хорошо, но недостатком является то, что это не просто улучшить решение позже - не приятный интерфейс. Но возможно с каждым сервером JavaEE без каких-либо усилий по перенастройке, поскольку это стандартный JavaEE.
Другое решение немного зависит от используемого вами сервера.
WildFly (community): вы можете использовать внутреннюю подсистему infinispan и использовать ее в режиме HashMap. Вы можете просто использовать его локально для начала и изменить конфигурацию на кластеризованное (реплицированное или распределенное), если кеш растет, и вам нужно больше памяти для его кеширования.
JBoss EAP (Enterprise Product): здесь вы не можете использовать подсистему Infinispan, техническую можно, но она не поддерживается. Вам нужно использовать дополнительный JBossDataGrid (JDG), который основан на бесконечности. Здесь у вас есть дополнительные параметры, такие же, как и выше, для использования кеша в одном JVM-локальном или dist/repl. Или в другом экземпляре с удаленным доступом к кешу - часто достаточно быстро, но у вас есть один удаленный доступ, но JVM полностью отделен от сервера и может быть запущен другим. Кроме того, сервер и кеш не влияли на память друг друга.
Для других поставщиков вы также можете использовать подход JDG (или Infinispan как OpenSource).
Выполнено все время в приложениях J2EE и рекомендуется для чтения данных. Только уловка, если Db изменяется, то либо вам нужно как-то перезагрузить, либо отразится при перезагрузке приложения. –
Поскольку вы можете перезагружать, обновлять, обновлять наблюдателем, это не уловка. http://docs.oracle.com/javaee/6/tutorial/doc/gkhic.html – keni