IllegalArgument异常:不是实体

时间:2018-12-02 06:50:16

标签: spring-boot jpa spring-data-jpa criteria-api

我有我的Spring Boot应用程序。其中我在daoImpl层下编写了以下代码。

    @Autowired
    EntityManager


CriteriaBuilder qb = em.getCriteriaBuilder();
CriteriaQuery<Person> c = qb.createQuery(Person.class);
Root<Person> p = c.from(Person.class);

其中@Entity类中的“人”放在单独的“公共”包中。

尽管它通过了第一行,但在第二行抛出了异常“ Not aentity ..”。 有人可以帮我解决可能的原因。这对我来说很奇怪,因为同一实体在上一行而不是下一行被接受。

2 个答案:

答案 0 :(得分:0)

一般而言,无论您遇到什么问题,都是您不能拥有名称为“ Order”的表,因为它是sql中的关键字。

将其更改为其他内容并检查它是否可以工作。

如果您仍然想使用任何关键字,请参见this

答案 1 :(得分:0)

我有解决方案,如果它在单独的项目中,我们应该使用@EntityScan而不是@ComponentScan来查找实体包。