Долгий вопрос, пожалуйста, несите меня.
Мы используем Spring + JPA для веб-приложения. Моя команда обсуждает инъекцию EntityManagerFactory в GenericDAO (DAO на основе Generics что-то в строках, предоставленных APPFUSE, по какой-то причине мы не используем JpaDaosupport) по инъекции EntityManager. Мы используем "управляемое управление".
Аргументы против инъекции a EntityManagerFactory состоят в том, что он слишком тяжелый и, следовательно, не требуется, EntityManager делает то, что нам нужно. Кроме того, поскольку Spring создаст новый экземпляр DAO для каждого веб-запроса (я сомневаюсь в этом), не будет никаких проблем concurrency, так как в одном экземпляре EntityManager используется общий поток двумя способами.
Аргумент для инъекции EFM заключается в том, что его хорошей практикой во всем его всегда хорошо иметь дескриптор для factory.
Я не уверен, какой лучший подход, может кто-нибудь, пожалуйста, просветить меня?