草庐IT

persistence-unit

全部标签

java - 配置 Hibernate 以使用重命名的 persistence.xml

我们必须重命名persistence.xml以欺骗WebSphere7不要使用其内置的OpenJPA。当你使用Spring时,这很容易做到,你只需指示其实体管理器工厂使用另一个位置用于persistence.xml:但现在我们想在没有Spring的情况下使用普通的Hibernate/JPA,并且找不到任何方法来指定替代的persistence.xml位置。JPA2规范对此没有任何说明......有什么线索吗?是否可以指示Hibernate使用重命名的persistence.xml?======看起来让Hibernate读取重命名的persistence.xml文件是不可能的。在我的情况

java - JPA EntityManager persist() 导致对象出现分离,即使抛出错误

您好,我有一个具有以下功能的简单DAO。publicelementcreateElement(Elemente){em.persist(e);em.flush();returne;}实体表对(type,value)对有唯一约束,我在下面进行测试:publicvoidtestCreateElement()throwsDataAccessException{//StartwithemptyElementtableElemente=newElement();e.setType(myType.OTHER);e.setValue("1");dao.createElement(e);e=newEl

java - 以编程方式访问 JPA <persistence-unit-metadata>

是否可以访问中的信息?通过JavaAPI?MySchema我想通过JPAAPI或EclipseLinkAPI读取模式“MySchema”,这是我使用的实现。类似于:entityManager.getDefaults().getSchema();可以转换或使用任何EclipseLink类,这很好。谢谢 最佳答案 经过一段时间的调试后,我找到了访问实体架构的解决方案。EntityTypeentity=emf.getMetamodel().entity(MyEntity.class);EntityTypeImplentityTypeImp

java - Persistence.xml 和 OSGi (Equinox)

我目前正在使用OSGi进行测试。我正在通过Eclipse运行它。我想让我的DAO层成为OSGi解决方案的一部分,但我的第一个绊脚石是这个错误:Jun29,20096:12:37PMorg.hibernate.cfg.annotations.VersionINFO:HibernateAnnotations3.3.0.GAJun29,20096:12:37PMorg.hibernate.ejb.VersionINFO:HibernateEntityManager3.3.0.GAJun29,20096:12:37PMorg.hibernate.ejb.Ejb3Configurationcon

java - 为什么我们需要在 <persistence-unit> 元素中指定类?

我的persistence.xml有2个持久性单元。他们每个人都有几个元素。我认为我们必须指定与某个持久性单元相关的所有类。但是我不小心忘记了为新实体指定类元素,但即使没有它,程序也能正常工作。然后我删除了所有类元素,一切正常。那么,我们为什么需要它?示例代码:chartdemo.model.domain.Category 最佳答案 如果您没有在persistence.xml文件中指定类,您的持久性管理器将管理persistence.xml文件所在位置(jar文件、类目录)中的所有实体类。列出类使您可以灵活地选择实体并将它们分组到持

java - openejb 嵌入式容器找不到 persistence.xml

我在嵌入式模式下使用openEjb来测试无状态sessionbean,它有一个注入(inject)的EntityManager。但是,当我运行测试时,它失败了,因为它无法初始化应用程序。当我看到控制台时,我还可以看到与无法找到persistence.xml有关的错误注意:我尝试将WebContent和META-INF放在类路径中,但这也无济于事。更新:在使用openejb+eclipse时,资源查找有一些非常奇怪的地方。我将WebContent添加到源文件夹。我不再收到persistence.xml错误,但现在我收到一个错误,表明openejb找不到任何托管资源我将WebContent

java - Hibernate/persistence 有哪些常见问题?

我有一个应用程序,我想针对与Hibernate和/或持久性相关的可能问题进行测试。还有什么问题?我如何复制它们(字面意思)?你如何从中恢复过来?明确一点:我说的是多线程集群环境(最复杂的一个)。我的:org.hibernate.StaleObjectStateException:行已被另一个事务更新或删除(或未保存的值映射不正确)复制:加载对象。使用HQL进行更新。尝试更新(保存)加载的对象。句柄:不确定... 最佳答案 延迟加载是您会遇到的大问题之一,尤其是当您遵循标准DAO模式时。你最终会得到惰性加载的集合,但是在你的DAO层出

java - EntityManager 不能使用 persist 将元素保存到数据库

我遇到了使用EntityManager将元素持久化到数据库的问题。根据我找到的答案,我在我的DaoJpa中尝试了这4种方法来做这样的事情,但仍然失败了。这里附上我尝试过的四种方式:Controller部分的代码:@TransactionalSmartProductsmartProduct=newSmartProduct();smartProduct.setName("DoveSoap");smartProductDao.persist(smartProduct);1.道杰帕:@Transactionalpublicvoidpersist(SmartProductsmartProduct

java - 如何在 Scala 中实例化 Unit?

我只想使用一些并发Set(看起来根本不存在)。Java使用java.util.concurrent.ConcurrentHashMap实现这种行为。我想在Scala中做一些类似的事情,所以我创建了ScalaHashMap(或JavaConcurrentHashMap)的实例并尝试添加一些元组:valmyMap=newHashMap[String,Unit]()myMap+(("myStringKey",Unit))这当然会导致编译过程崩溃,因为Unit是抽象的和最终的。如何实现?我应该使用Any吗?/AnyRef反而?我必须确保没有人插入任何值。感谢帮助 最

java - 不活动 transaciotn : javax. persistence.TransactionRequiredException:执行更新/删除查询

为什么我的交易不活跃?我有这条消息:“javax.persistence.TransactionRequiredException:执行更新/删除查询”我找不到原因应用上下文:-->DAO实现@ComponentpublicclassUserDaoImplimplementsUserDao{@PersistenceContext(unitName="punit")privateEntityManagerem;protectedUserDaoImpl(){}//otherovverrideslikefind,get@Override@Transactionalpublicvoiddele