草庐IT

QueryDSL-JPA

全部标签

java - 无法打开 JPA EntityManager 进行事务处理;嵌套异常是 java.lang.IllegalStateException

我对Spring和Spring-Batch非常陌生。尽管如此,我还是设法安装了SpringBatch-Admin。我添加了自定义作业和Hibernate/JPA以实现持久性。一切都按预期工作,直到第一个block应该被持久化。然后我收到以下错误消息:org.springframework.transaction.CannotCreateTransactionException:CouldnotopenJPAEntityManagerfortransaction;nestedexceptionisjava.lang.IllegalStateException:Alreadyvalue[o

spring - 为什么我需要在我的 Spring 应用程序上下文中定义一个 Hibernate-JPA 供应商适配器?

我花了几天时间尝试为我的Spring/JPA(Hibernate)集成测试建立一个有效的数据库连接,解决神秘的“未找到数据库上下文”错误,我终于让它工作了,但我不明白为什么我必须做我该做的。注意我的LocalContainerEntityManagerFacotryBean如何引用HibernateJpaVendorAdapter。applicationContext.xml当我的持久性单元已经为Hibernate配置时,为什么我必须使用这个HibernateJpaVendorAdapter,如下所示?persistence.xmlcom.blah.blah.Class1com.bla

spring - 为什么我需要在我的 Spring 应用程序上下文中定义一个 Hibernate-JPA 供应商适配器?

我花了几天时间尝试为我的Spring/JPA(Hibernate)集成测试建立一个有效的数据库连接,解决神秘的“未找到数据库上下文”错误,我终于让它工作了,但我不明白为什么我必须做我该做的。注意我的LocalContainerEntityManagerFacotryBean如何引用HibernateJpaVendorAdapter。applicationContext.xml当我的持久性单元已经为Hibernate配置时,为什么我必须使用这个HibernateJpaVendorAdapter,如下所示?persistence.xmlcom.blah.blah.Class1com.bla

spring - JPA 和 Hibernate 中的 LazyInitializationException

我知道这个问题已经在这里和互联网上被问过很多次,我已经阅读了许多答案,但我仍然不明白解决这个问题的正确方法。我正在尝试使用SpringMVC和JPA,每次访问延迟加载的属性时,我都会收到LazyInitializationException。这是我正在试验的一些代码:@RepositorypublicclassMyDAO{privatestaticfinalLoggerlogger=LoggerFactory.getLogger(MyDAO.class);@PersistenceContextprivateEntityManagerem;@Transactionalpublicvoid

spring - JPA 和 Hibernate 中的 LazyInitializationException

我知道这个问题已经在这里和互联网上被问过很多次,我已经阅读了许多答案,但我仍然不明白解决这个问题的正确方法。我正在尝试使用SpringMVC和JPA,每次访问延迟加载的属性时,我都会收到LazyInitializationException。这是我正在试验的一些代码:@RepositorypublicclassMyDAO{privatestaticfinalLoggerlogger=LoggerFactory.getLogger(MyDAO.class);@PersistenceContextprivateEntityManagerem;@Transactionalpublicvoid

spring - 使用 Spring 数据 JPA 获取随机记录

我想使用SpringdataJPA获取随机记录。我也在使用@Query。但这需要很长时间。@Query("selectquefromQuestionqueorderbyRAND()")publicListfindRandamQuestions();哪种方法更有效?请帮忙! 最佳答案 selectquefromQuestionqueorderbyRAND()的问题是您的数据库将在返回一项之前对所有记录进行排序。所以在大型数据集中它很昂贵。实现此目标的更便宜的方法包括两个步骤:查找要从中选择的记录总数。在这组中随机获得一件元素。以MyS

spring - 使用 Spring 数据 JPA 获取随机记录

我想使用SpringdataJPA获取随机记录。我也在使用@Query。但这需要很长时间。@Query("selectquefromQuestionqueorderbyRAND()")publicListfindRandamQuestions();哪种方法更有效?请帮忙! 最佳答案 selectquefromQuestionqueorderbyRAND()的问题是您的数据库将在返回一项之前对所有记录进行排序。所以在大型数据集中它很昂贵。实现此目标的更便宜的方法包括两个步骤:查找要从中选择的记录总数。在这组中随机获得一件元素。以MyS

java - 使用具有复杂条件的 JPA 实体图

我有一个基于SpringMVC+JPA+Hibernate的项目。我正在使用实体图(JPA2.1)来定义要从数据库中获取哪些数据,如下例所示。EntityGraphentityGraph=entityManager.createEntityGraph(Company.class);entityGraph.addAttributeNodes("reviews");Maphints=newHashMap();hints.put("javax.persistence.loadgraph",entityGraph);Companycompany=entityManager.find(Compa

java - 使用具有复杂条件的 JPA 实体图

我有一个基于SpringMVC+JPA+Hibernate的项目。我正在使用实体图(JPA2.1)来定义要从数据库中获取哪些数据,如下例所示。EntityGraphentityGraph=entityManager.createEntityGraph(Company.class);entityGraph.addAttributeNodes("reviews");Maphints=newHashMap();hints.put("javax.persistence.loadgraph",entityGraph);Companycompany=entityManager.find(Compa

spring-data-jpa - 使用 Spring Data JPA 的 Kotlinic 模式 "query by example"

SpringDataJPA引入了一个不错的功能,"querybyexample"(QBE).您可以通过构造实体的实例来表达您的搜索条件。您不必编写JPQL。它比repositoryqueryderivation使用更少的“魔法”。.语法很好。它可以防止琐碎的存储库代码爆炸。它可以很好地经受重构。但有一个问题:QBE仅在您可以部分构造一个对象时才有效。这是我的实体:@Entity@Table(name="product")dataclassProduct(@Idvalid:String,valcity:String,valshopName:String,valproductName:St