草庐IT

entityManager

全部标签

java - IN 不工作的 JPA EntityManager createQuery()

这是失败的:Listnames=newArrayList();names.add("sold");Queryquery=em.createQuery("FROMPropFieldpropFieldWHEREpropField.nameIN(?)");query.setParameter(1,names);Listfields=query.getResultList();这也是:Listnames=newArrayList();names.add("sold");Queryquery=em.createQuery("FROMPropFieldpropFieldWHEREpropField

java - 如何设置 JPA EntityManager 查询的超时时间

我目前从我的EntityManager查询中收到连接超时错误。是否可以为这些设置超时?持久性.xmlorg.eclipse.persistence.jpa.PersistenceProvidercall.structure.Taskcall.structure.Installationcall.structure.Contentscall.structure.Recipientcall.structure.CallTaskcall.structure.SmsTaskcall.structure.EmailTaskcall.security.Usercall.structure.cont

java - 没有可用的事务性 EntityManager - 使用 JPA Api,Hibernate Session 出错

我正在尝试从注入(inject)的EntityManager中解包HibernateSession,因为我需要使用Hibernate的nativeCriteriaAPI。当我尝试使用Criteria时出现以下异常:Causedby:java.lang.IllegalStateException:NotransactionalEntityManageravailableatorg.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEnti

java - 了解 EJB3/JPA 容器级事务和隔离级别

考虑一下我正在使用的一些代码的简化View:@Stateless(...)@Remote(...)@TransactionAttribute(TransactionAttributeType.MANDATORY)publicclassFirstEjbType{@EJB(...)privateSecondEjbTypesecondEjb;@EJB(...)privateThirdEjbTypethirdEjb;publicvoiddoSomething(){secondEjb.doSomething();//WRITESSOMETHINGTOTHEDATABASEthirdEjb.doS

java - 调用 EntityManager.flush() 时它是否也会刷新第二个缓存?

调用EntityManager.flush()时,会不会也flush二级缓存?我尝试了谷歌搜索,也尝试了刷新它,看起来确实如此,但最好能确认一下。编辑:现在好像没有刷新二级缓存。 最佳答案 JPA没有二级缓存的概念(它不是规范的一部分)。所以二级缓存的行为完全取决于JPA提供者。您使用的是什么Hibernate、EclipseLink、OpenJPA?更新:我支持部分更正,JPA2.0引入了一些选项来控制二级缓存的使用(如@Cachable) 关于java-调用EntityManager

java - JPA事务回滚重试和恢复: merging entity with auto-incremented @Version

我想在交易失败后恢复。现在,当然,在任何回滚之后,所有实体都会分离并且实体管理器会关闭。但是,UI仍然保留分离的实体。显然我们不能就这样丢弃用户的更改,所以我们想让他们重试(修复突出显示的验证错误,然后再次单击按钮)。在JavaPersistenceWikiBook之后,OnemethodoferrorhandlingistocallmergeforeachmanagedobjectafterthecommitfailsintoanewEntityManager,thentrytocommitthenewEntityManager.Oneissuemaybethatanyidsthat

java - 从 hibernate 配置创建 EntityManagerFactory

在我们当前的应用程序(JavaSE)中,我们使用Hibernate特定的API,但我们有点想尽可能地迁移到JPA(但速度很慢)。为此,我需要EntityManagerFactory而不是SessionFactory(我想毫无争议地保持这个公理)。问题出在哪里,目前我们的session工厂是从org.hibernate.cfg.Configuration创建的,我想暂时保持原样-因为此配置已通过我们软件的不同部分可以并且确实根据需要配置持久性。所以问题是:我怎样才能使ServiceRegistryserviceRegistry=newServiceRegistryBuilder().ap

java - 为什么 EntityManager 为空?

在我的Web应用程序中,我在ApacheTomcat(TomEE)/7.0.37服务器上使用OpenJPA。我使用Netbeans自动生成类(“来自数据库的实体类...”和“来自实体类的sessionBean...”)。在SessionBean(例如UserFacade)我想得到EntityManager:@StatelesspublicclassUserFacadeextendsAbstractFacade{@PersistenceContext(unitName="CollDocPU")privateEntityManagerem;@OverrideprotectedEntityM

java - Spring 事务注解

我正试图更好地处理Spring的@Transactional属性的使用。我知道它基本上将标记为@Transactional的方法的内容包装在事务中。将服务/业务层方法标记为事务性方法是否合适,而不是像我在此处所做的那样将实际的DAO方法标记为事务性方法?服务实现publicclassUserServiceImplimplementsUserServiceInt{@AutowiredprivateUserServiceDAOserviceDAO;@OverridepublicUsergetUser(intid){returnserviceDAO.getUser(id);}@Overrid

javax.persistence.PersistenceException : No Persistence provider for EntityManager named

我正在尝试按照老师文档中提供的信息设置一个简单的jpa2.0项目。我已经处理这个问题好几个小时了,但无论我做什么,当我尝试创建EntityManagerFactory时,我总是遇到这个异常:我发现了很多关于此异常的类似问题,但没有我能够开始工作的解决方案。我在这里做错了什么?我从Eclipse创建了这个项目(没有命令提示符)Exceptioninthread"main"javax.persistence.PersistenceException:NoPersistenceproviderforEntityManagernamedcourseatjavax.persistence.Per