You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

spring-boot-starter-data-jpa 3.2.1中HibernateTemplate加载失败问题

解决HibernateTemplate在Spring Boot 3.2.1中无法加载的问题

问题根源很明确:Hibernate 6.x已经彻底移除了org.hibernate.Criteria类,而你使用的HibernateTemplate依赖这个旧API,所以在搭配spring-boot-starter-data-jpa 3.2.1(依赖hibernate-core 6.4.1.Final)时会出现类找不到的错误。

给你几个可行的解决思路:

  • 直接弃用HibernateTemplate:这是最推荐的方案。Spring官方早在多年前就建议使用JPA标准的EntityManager或者Spring Data JPA的Repository接口来替代HibernateTemplate,这些API更贴合现代JPA规范,也能更好地兼容Hibernate 6.x。
  • 改用JpaTemplate:如果习惯模板式操作,可以切换到JpaTemplate,它基于JPA标准API,不依赖Hibernate的私有类,能适配Hibernate 6.x。不过同样更建议直接使用EntityManager注入操作。
  • 降级Spring Boot版本:如果短期内无法重构代码,可以把Spring Boot版本降到2.x系列(比如2.7.x),这个版本依赖的Hibernate 5.x还保留org.hibernate.Criteria类,但这只是临时方案,旧版本后续会停止维护,存在安全风险。

内容的提问来源于stack exchange,提问作者kimler jin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 11:55:55