草庐IT

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

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

java - JPA 如何在使用父级合并但创建子级时获取生成的 id/对象?

我有一个实体,该实体之前已保留并且与另一个实体具有@OneToMany关系。为了添加一个新实体,我只是在托管对象中添加我的新实体并使用cascadeType.ALL来保存更改。有没有一种方法可以让我获取新创建的对象的ID,或者获取我在合并中使用的原始(非托管)对象以更新其ID?在伪代码中,我希望发生以下情况:将为合并后的实体返回新副本旧副本将针对新实体进行更新例子:父A,id=13childB,id=0本质上,我想在父级上发出merge,但在子级上级联persist(以便更新而不是复制原始子实例)。显然这不会发生。我正在使用hibernate作为提供者。 最

java - @ManyToMany 三个表之间的关系

我的SpringJPA应用程序中有三个独立的实体-用户、部门、角色我的数据库中有一个连接表来关联这些实体中的每一个:USER_DEPARTMENT_ROLE我的问题是,如何在我的实体类中定义这种关系?我是否必须在每个单独的实体中定义一个@ManyToMany关系?我知道如何定义两个表之间的这种关系,但对于两个以上的表,我不确定从哪里开始。感谢任何帮助! 最佳答案 如果您在连接表中映射了两个以上的关系,那么我建议创建一个单独的实体,用于映射该特定表。问题是您是否可以有一个不同的id列作为人工主键,或者您必须坚持使用三个外键构建的复合主

java.lang.NoSuchMethodError : javax. persistence.JoinColumn.foreignKey

请帮我解决这个错误。按照下面的代码:这是我的类(class)/实体人物:packageentities;importjava.util.Calendar;importjava.util.List;importjavax.persistence.CascadeType;importjavax.persistence.Column;importjavax.persistence.Entity;importjavax.persistence.FetchType;importjavax.persistence.GeneratedValue;importjavax.persistence.Id;

MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk

MISCONFRedisisconfiguredtosaveRDBsnapshots,butiscurrentlynotabletopersistondisk.Commandsthatmaymodifythedatasetaredisabled.PleasecheckRedislogsfordetailsabouttheerror;报错信息:MISCONFRedis被配置为保存RDB快照,但目前无法在磁盘上保持。可能修改数据集的命令被禁用,有关错误的详细信息,请查看Redis日志redis配置文件默认配置为保存RDB快照,RDB快照是Redis数据持久化的一种方式,又称为Snapshot,默认

java - 为什么 JPA persist() 不生成自增主 ID?

我正在使用JPAtoplink-essential和SQLServer2008我的目标是获取将要插入到表中的数据的自动递增主键值。我知道在JDBC中,有类似getInsertedId()的方法可以为您提供自动递增主ID的ID(但那是在插入语句执行之后)在JPA中,我发现@GenratedValue注释可以解决这个问题。@Entity@Table(name="tableOne")publicclassTableOneimplementsSerializable{privatestaticfinallongserialVersionUID=1L;@Id@GeneratedValue(str

java - "org.hibernate.PersistentObjectException: detached entity passed to persist"当我尝试在数据库中插入数据时

我正在尝试在数据库中保留一个实体类,为此我为我的类尝试了几种不同的实现,但仍然面临错误(但不同的错误)。我的实体类现在是这样的:@Entity@Table(name="pagina")publicclassPaginaextendsEntidade{@Id@Column(name="id")@GeneratedValue(strategy=GenerationType.IDENTITY)privateIntegerId;@Column(name="nome",unique=true)privateStringnome;@Column(name="titulo")privateStrin

小型 facelet 应用程序中的 javax.persistence.TransactionRequiredException

我试图将一些值从小型facelet应用程序保存到MySql数据库,但不断收到此错误。我有一个带有JPS页面和一个servlet的相同应用程序,它在大致相同的逻辑下运行良好,这是我第一次尝试使用facelets,所以它可能只是一些愚蠢的事情,但我会感谢帮助。谢谢错误javax.faces.el.EvaluationException:javax.persistence.TransactionRequiredExceptionatjavax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMe

java - 类是托管的,但未在 persistence.xml 文件中列出

我的项目出现以下异常:Class"com.testApp.domain.Register"ismanaged,butisnotlistedinthepersistence.xmlfile我的persistence.xml文件如下所示:org.hibernate.ejb.HibernatePersistence我试过这个post和this,两者都建议手动或自动将类添加到persistence.xml。其他人说这是一个与eclipse相关的问题,可以通过清理或重新打开项目来解决。但是,我希望hibernate能够自动检测到这些类,而不是手动将它们添加到我的persistence.xml中。

java - 有没有办法在没有 persistence.xml 的情况下为 Spring 的 LocalContainerEntityManagerFactoryBean 提供 persistenceUnitName?

我有多个数据源和多个EntityManagerFactories要在我的spring上下文中定义。如果只有EntityManagerFactory,我们不需要提供persistenceUnitName。但是要关联EntityManager以使用@PersistenceContext更正EntityManagerFactory,我应该提供unitName="somePU"属性。但是如果我们为persistenceUnitName属性命名,那么Spring期望在persistence.xml文件中有这些persistenceUnitName声明。有没有办法在没有persistence.xm