• @ElementCollection是Hibernate/JPA中代表父子关系的多方注释,但是没有@OrderColumn的@ElementCollection插入和删除容易出现性能损失,而使用@OrderColumn性能变得更好。 本应用
  • SQL JOINS和DTO是我们打击N + 1问题的好办法,可参考#DTO标签看看其他方式,这里,我们通过使用Spring Projections(DTO)和通过JPQL和本机SQL(用于MySQL)编写各种Join联接的概念证明。 1. 定义多个实体(例如,Tournament以及Player的双
  • 这是展示一个SpringBoot应用程序,它使用两个数据源(两个MySQL数据库,一个命名players_db,一个命名coaches_db)和两个连接池(每个数据库使用自己的HikariCP连接池,具有不同的设置)。基于上述配置,从两个 icon
  • 如果你从来没有遇到过著名LazyInitializationException, 那么你实际上没有真正使用Hibernate过:),但是,如果你遇到过,你是将LAZY懒加载切换到AGER立即加载,那么这里建议对你有用。 通常情况下,当我 icon
  • 鲍勃大叔推荐的[url= Seemann[/url]一文:昨天我拜访了一个客户讨论软件架构,包括DDD和ORM。今天我偶然发现了我在2014年写的东西。它仍然反映了我今天的想法。 icon
  • [img]/simgs/forum/hibernate-sql.jpg[/img] icon
  • 您可能已经知道,Spring Data JPA是更大的Spring Data系列的一部分。在本文中,我们将使用Spring Data JPA和Spring Boot与MariaDB数据库进行通信。 依赖: icon
  • 这是一个Spring Boot应用程序展示案例,它读取一个相对较大的JSON文件(200000多行),并使用ForkJoinPoolAPI和HikariCP 通过批处理将其内容插入MySQL 。 关键点: 1. 使用MySQL json类型 icon
  • 这是一个Spring Boot应用程序案例,展示如何使用Hibernate映射自然业务键 @NaturalId。 关键点: 1.在实体(例如,Product)中,标记应作为自然ID 的属性(业务键) @NaturalId; 通 icon
  • 当试图在JPQL查询使用SQL函数时,如果Hibernate无法识别就不能分析这个JPQL语句,那么就导致exceptions抛错。例如,Hibernate无法识别MySQL的concat_ws函数。 这个应用程序是一个基于Hibern icon
  • Hibernate Types是Hibernate默认不支持的一组额外类型。其中一种类型是java.time.YearMonth。这里展示一个Spring Boot应用程序,说明是如何使用[url= icon
  • 获取实体时,也会加载所有属性。这是因为每个隐式使用[url= icon
  • 正确合并集合并不是一件容易的事!推荐Vlad的例子[url= Boot示例,只有手 icon
  • 在本文中,您将学习使用JPA和Hibernate时调用存储过程的最佳方法,以便尽快释放底层JDBC资源。 我决定写这篇文章,因为Hibernate处理存储过程的方式会导致[url= icon
  • Lombok 是一个非常受欢迎和有用的图书馆。尽管如此,请注意Lombok @EqualsAndHashCode对实体的影响可能会带来严重问题。 实体应实施equals()和hashCode()。主要问题是Hibernate要求实体在其所有 icon
  • Spring post-commit钩子会一直保持数据库连接打开直到完成,因此使用afterCommit方法实现提交后的钩子时,其中任务不能耗时过长,因为这是数据库连接一直打开,没有关闭归还到连接池,在负载很重的情况下,会导致连接池资源耗尽。 icon
  • Open-Session In View会在你即使没有使用惰性实体情况下加载且初始化并获取它们,这会导致严重的性能损失。 Open-Session in View 反模式在Spring Boot中默认是激活的。如果您更喜欢使用它,那么需要尝 icon
  • 获取超出需要的数据更容易导致性能损失。使用DTO可以让我们只提取所需的数据。在这个应用程序中,我们依赖于Hibernate ResultTransformer和原生SQL生成DTO? icon