我的persistence.xml 中有许多持久性单元,一个是postgreSQL 模式。
我在需要时通过动态创建 EntityManagerFactory 来实例化我的 EntityManager:
EntityManagerFactory emf = Persistence.createEntityManagerFactory(schemaToChoose);
EntityManager em = emf.createEntityManager();
它工作正常。但因此,我不使用容器注入。
现在,我想知道这种方式是否不会花费太多资源?
我可能不太了解 JPA 缓存,但我相信实体存储在 em 缓存和 emf 缓存中,有 2 个级别。因此,当我每次实例化 em 和 emf 时,我可能会丢失 JPA 缓存,因此,我也每次都重新创建它。
我有 2 个问题:每次 emf 和 em 影响性能时可以实例化吗?我应该注入尽可能多的 em 我有模式而不是保留缓存吗?
谢谢