Spring

JPA @MappedSuperclass가 Spring Boot에서 작동하지 않습니다.

기록만이살길 2021. 3. 7. 03:03
반응형

JPA @MappedSuperclass가 Spring Boot에서 작동하지 않습니다.

1. 질문(문제점):

@MappedSuperclass어노테이션을 사용하는 데 문제가 있습니다.

여기 내 혼란을 보여주는 슬림 다운 버전이 있습니다.

수퍼 클래스 :

import javax.persistence.Id;
import javax.persistence.MappedSuperclass;

@MappedSuperclass
public class FooBase {

  @Id
  protected Long id;

  // Getters/setters.

}

아강:

import javax.persistence.Entity;

@Entity
public class Foo extends FooBase {

  String bar;

  // Getters/setters.

}

여기서 뭔가 빠졌 나봐요. IntelliJ조차도 Foo수업을 보고합니다.

영구 엔티티 'Foo'에는 기본 키가 있어야합니다.

를 호출 JpaRepository#findAll()하면의 필드 Foo가 JSON 응답 엔터티에 없습니다.

[
    {
        "id": 1,
    }
]

2. 해결방안:

제 질문에 답 해주신 모든 분들께 감사드립니다.

내 문제는 하위 클래스 필드에 대한 게터를 정의하지 않았습니다.

65729908
반응형