spring boot jpa-java.lang.IllegalArgumentException: Not a managed type异常问题解决方法

时间:2023-03-10 03:37:02
spring boot jpa-java.lang.IllegalArgumentException: Not a managed type异常问题解决方法

JPA实体类没有被扫描到,导致这样的情况有以下几种可能:

  • 实体类没有加上@Entity注解

    对应解决方法在实体类上加上@Entity即可解决问题

  • 没有按照SpringBoot的约定,默认扫描(application.java 入口类相对的兄弟包及其子包)

    将application.java(入口类)放置到更高层级的包,使得项目结构符合SpringBoot约定扫描的规则
    在启动类中添加扫描注解

    @ComponentScan(basePackages = "com.boot.demo.xxx..")用于扫描@Controller @Service
    @EnableJpaRepositories(basePackages = "com.boot.demo.xxx..dao") 用于扫描Dao @Repository
    @EntityScan("com.boot.demo.xxx.
    .*")用于扫描JPA实体类 @Entity