草庐IT

Hibernate

全部标签

java - Spring JPA deleteInBatch 导致 StackOverflow

我对使用deleteInBatch从数据库中删除项目有疑问。我有一个对象A,它有一个对象B的列表,例如:classA{privateList;}该列表包含超过7k个元素。所以现在我必须删除A及其所有元素。我尝试通过deleteInBatch但我得到了org.springframework.web.util.NestedServletException:Handlerprocessingfailed;nestedexceptionisjava.lang.StackOverflowError使用简单的删除方法删除项目是可行的,但需要5分钟以上的时间。我的删除代码是:publicvoidde

java - 检查实体是否在映射实体列表中

我有以下Hibernate代码,我认为它应该可以工作,但它会引发错误:org.springframework.web.util.NestedServletException:Requestprocessingfailed;nestedexceptionisorg.hibernate.exception.SQLGrammarException:ERROR:syntaxerroratornear"."Position:503相关代码如下:@OverridepublicListgetRepositoryLinks(finalDugaUseruser){Queryquery=sessionFa

java - 如何向Oracle 数据库插入50K 条记录?

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭7年前。Improvethisquestion我有要求只将一些数据插入Oracle数据库到一个表而不是任何关系。我需要在同一个事务中插入超过50K条记录。做这个的最好方式是什么?使用纯JDBC、JPA或Hibernate等……哪种方式(批量更新或原始更新)更适合在同一事务中插入大约50000条记录?

java - EJB/JPA 事务边界

我在读EJBTransactionboundaryandTransactionboundary让我们专注于RequiresNewAttribute.这是链接中的修改图所以说method-B用RequiredNewattribute注释.所以根据理论当method-A电话method-B一个新的事务将开始,已经开始的事务将被暂停,当method-B返回新事务将被提交。现在考虑在S1部分我们使用entitymanager.persist()创建一个jpa实体现在我们将此实体传递给method-B其中设置了name实体的领域。现在当我们从method-B返回时怎么可能commitdb中的事务

java - 无法解析属性 : userId. 用户名

我有以下实体类:@MappedSuperclasspublicclassAbstractEntityimplementsSerializable,Comparable{privatestaticfinallongserialVersionUID=1L;@Id@GeneratedValue(strategy=GenerationType.IDENTITY)@Basic(optional=false)@Column(name="id")protectedIntegerid;@OverridepublicintcompareTo(AbstractEntityo){returnthis.toS

java - 将动态数据设置为 @Range 注释的最小和最大属性 - hibernate validator

我正在使用HibernateValidator来验证数据。我使用@Range属性来验证特定字段。@Range(min=0,max=100)privateStringamount;这很好,但我可以动态更改min和max的值而不是硬编码。我的意思是我可以做类似的事情吗:@Range(min=${},max=${})privateStringamount; 最佳答案 Java中的注解使用常量作为参数。您不能动态更改它们。编译常量只能是原语和字符串。检查这个link.如果你想让它可配置,你可以将它们声明为staticfinal。例如:pri

java - hibernate导入import.sql失败

我想在每次应用程序运行时自动删除表格并创建一个新表格,并自动插入预定义的数据。我已经在import.sql中准备了数据。我已经在application.properties中设置了spring.jpa.hibernate.ddl-auto=create-drop。但是,为什么会出现以下错误?我可以手动插入它。2015-11-2020:53:57.242ERROR7092---[ost-startStop-1]org.hibernate.tool.hbm2ddl.SchemaExport:HHH000388:Unsuccessful:INSERTINTOgender2015-11-202

java - Jackson JSON 和 Hibernate JPA 问题的无限递归(又一个)

我在这方面找到了大量资源,例如这个-InfiniteRecursionwithJacksonJSONandHibernateJPAissue.我已经尝试实现那里描述的所有各种建议(包括基本的@JsonIgnore),但无济于事。无论我尝试什么,除了无限递归错误之外,我什么都得不到。我认为我有一个非常相似/典型的设置,但显然有问题,因为尽管使用了@JsonManagedReference、@JsonBackReferencere和@JsonIdentityInfo注释,但我仍然收到错误。我的表是“exchange”和“stock”,它们之间有manytoMany,我一直在通过Exchan

java - Spring JPA 多对多 : remove entity, 删除连接表中的条目,但不删除另一侧

我有这个用例:我有用户。我有群组。用户和群组之间存在N:N关系。我无法删除用户。如果我删除一个群组,该群组中的用户不应被删除。用户端:@ManyToMany(fetch=FetchType.EAGER)@JoinTable(name="USERS_GROUPS",joinColumns=@JoinColumn(name="USER_ID",referencedColumnName="ID"),inverseJoinColumns=@JoinColumn(name="GROUP_ID",referencedColumnName="ID"))privateListgroups;组方:@Ma

java - 我如何保证 Thread.sleep 至少 hibernate 那么长的时间?

根据thisquestion,Thread.sleep不一定保证在您指定的时间内hibernate:它可能更短或更长。如果您阅读Thread.sleep的文档,您会发现对于sleep的确切持续时间没有强有力的保证。它特别指出持续时间是subjecttotheprecisionandaccuracyofsystemtimersandschedulers这(有意)含糊但暗示不应过分依赖持续时间。特定操作系统上可能的hibernate持续时间的粒度由线程调度程序的中断周期决定。InWindows,thescheduler'sinterruptperiodisnormallyaround10o