草庐IT

Persistence

全部标签

java - jar 名称中的版本号 - 如何处理 persistence.xml?

我们正在构建带有大量jar的ear文件。其中一些包含定义持久性单元的persistence.xml文件,这些持久性单元用引用其他jarother.jar现在我们计划在未来使用Maven并且jar名称现在包含版本号。对于上述机制来说,这是一个巨大的问题:而不是other.jar,我们需要指定other-1.2.3.jar.但是在构建jar时无法知道正确的版本号,因为在ear的构建中,依赖中介可以替换other-1.2.3.jar。与other-2.3.4.jar这样我在jar的persistence.xml中的引用就变得无效了。所以我的问题是:在构建大型ear文件时,如何在Maven中正

java - 我应该在 Java 9 中要求哪个模块才能使用 JPA?

我正在用一个需要JPA(javax.persistence.*类)的项目测试Java9。当我添加module-info.java并声明我的模块时,javax.persistece包下的所有类都变得不可用。我搜索了很多,但找不到需要在Java9模块项目中使用JPA的模块。更新正如艾伦建议的那样,我跑了$jar--describe-module--file=javax.persistence-api-2.2.jarNomoduledescriptorfound.Derivedautomaticmodule.java.persistence@2.2automaticrequiresjava.

java - 在哪里可以找到 jpa orm.xml 使用示例

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,describetheproblem以及迄今为止为解决该问题所做的工作。关闭8年前。Improvethisquestion我正在尝试查看JPAorm.xml的一些使用示例。如果有人将我指向一个链接,

java - : mappedBy reference an unknown target entity property

我正在开发一个使用hibernate的简单练习应用程序。它具有简单的映射,就像制造商可以拥有许多手机一样。但是手机只能由单一制造商制造。这是我认为代码应该是的。packagemobileconsumers.entity.dto;importjavax.persistence.Column;importjavax.persistence.Entity;importjavax.persistence.FetchType;importjavax.persistence.GeneratedValue;importjavax.persistence.GenerationType;importja

java - 如何使用 JPA 2.1 属性 javax.persistence.schema-generation.database.action?

javax.persistence.schema-generation.database.action的允许值为无(不提供任何服务......)创建(仅在应用程序第一次启动时有效,因为如果创建已存在的模式,则由于大多数数据库(例如derby11.x)导致所有进一步启动失败drop-and-create(它永远不会保留任何数据,这引发了为什么它是持久性标准规范的一部分的问题——假设调试目的)drop(对称地失败create成功绝对没有选择使用这些值中的任何一个,我也看不到它们的规范有任何意义-假设您不希望应用程序的用户启动应用程序一次(使用create),破解persistence.xm

java - 支持最终字段的 Java 持久性提供程序

我是Java的新手,但我一直在养成一种习惯,即尽可能使用final来声明不变性,我认为这是一件好事。(考虑f#)我了解到JPA不支持final字段。hibernate,TopLink?我不确定这些,但我现在更喜欢JPA。这在理论上是否有可能-让我们通过反射(reflection)来说-在创建后修改final字段?我的猜测是……不:)对于持久性解决方案来说,当然可能的是支持带参数的构造函数。至少我认为没有理由使这成为不可能。我猜映射会有点棘手。这是一个替代解决方案。建议?编辑:我不熟悉不可变的确切定义,所以我凭直觉在这篇文章中使用了它。在这里声明Immutability意味着声明一个字段

java - 使用 hibernate 条件更新多行

我正在尝试运行一个在sql中看起来像这样的更新查询:updatestudentMastersetsess_status='G'whereACADEM_YEAR=COURSE_YEAR;我正在尝试使用Criteria重新创建查询,如下所示:publicvoidupdateSessionStatus(){Sessionsess=factory.openSession();Transactiontx=null;try{tx=sess.beginTransaction();Criteriacrit=sess.createCriteria(CollegeStudentsMaster.class)

java - 应该如何处理 javax.persistence.OptimisticLockException?

我是JPA的新手,如果不清楚,请原谅我。基本上我想通过使用乐观锁来防止并发修改。我已将@Version属性添加到我的实体类中。我需要知道这个处理OptimisticLockException的算法是否合理。我要使用ExecuteAroundIdiom像这样:interfaceUpdateUnitOfWork{doUpdate(Useruser);/*maythrowjavax.persistence.PersistenceException*/}publicbooleanexec(EntityManagerem,Stringuserid,UpdateUnitOfWorkwork){Us

java - @PersistenceUnit 注释不会创建 EntityManageFactory emf=null

我正在尝试使用SunJavaPetStoreDemo。在CatalogFacade类中有以下注释:@PersistenceUnit(unitName="myPetStorePU")privateEntityManagerFactoryemf;在CatalogFacade的所有方法中,Sun都有:EntityManagerem=emf.createEntityManager();但是我在尝试创建EntityManager时遇到了emf的空指针异常。但是......如果我在该行上方添加以下行EntityManagerFactoryemf=javax.persistence.Persiste

java - Maven 在运行测试用例 Eclipselink 和 hsqldb 时挂起

使用jps和jstack我可以到达有问题的等待线程,但不知道如何排除故障或导致它的原因。请参阅下面的Maven依赖项和jstack结果以及带有tid=0x000000000022c000的等待线程。进一步分析,对于所选版本,Eclipselink和hsqldb之间似乎存在问题。我在升级这两个库时遇到了这个问题,因为它过去分别适用于Eclipselink和hsqldb的2.0.1和1.8.0.10版本。org.eclipse.persistenceeclipselink2.4.0org.hsqldbhsqldb2.2.9testEclipseLinkhttp://download.ecl