我得到的原因是:org.hibernate.query.sqm.UnknownEntityException:无法解析根实体“UserEntity”异常。下面是我从JpaRepository实现的方法,它导致了它:
@Query(value = """
SELECT u FROM UserEntity u WHERE
u.id NOT LIKE :user_id AND
u.is_account_confirmed = true AND
u.id NOT IN (SELECT f.friends AS fri FROM UserEntity f WHERE fri.id = :user_id)""")
List<UserEntity> findAllNonFriendUsers(@Param("user_id") String id);
IntelliJ还将UserEntity类名突出显示为“无法解析”。我看到了一些类似的问题,我在UserEntity类上有适当的@Entity注解,项目结构中的JPA Facet(在Hibernate上设置)也存在。当然,我也有spring-boot-starter-data-jpa依赖。
有人看到一个错误吗?我不太了解JPA,所以这个错误可能真的很小。
编辑:如果我从UserEntity
中的@Entity注解中删除了name
参数,异常将消失。如果我用实体名替换类名,它也可以工作,但如果实体名包含-
符号,就不行了。有没有可能不改呢?
1条答案
按热度按时间btqmn9zl1#
检查您是否具备以下各项:
UserEntity
使用@Entity
注解进行注解@EntityScan("com.example.entities")
指向包含实体的正确包