스포카에서 Kotlin으로 JPA Entity를 정의하는 방법

- Kotlin으로 JPA Entity를 정의하는 방법
- Kotlin으로 Entity를 정의 시도해도 Java 코드와 유사한 형태의 코드를 볼 수 있음
- Property를 노출하도록 하면 Java 코드와 달리 생성자 매개 변수로 두어야 하거나 기본 값을 넣어 주어야 함
- Data Class와 불변변수(immutability)
- 불변 변수를 사용하는 이유는 Entity의 동일성을 유지하기 위해서
- 생성자 매개 변수로 전달 받거나 기본 값을 넣어 주어야 함
- 초기화 오류(Initialization Error)
- Java에서 변수는 초기화하지 않으면 기본 값이 null이기 때문에 문제가 없지만 Kotlin에서는 초기화를 하지 않으면 컴파일 에러가 발생함
- 따라서 Entity를 생성한 직후 해당 Entity를 다룰 때 JPA가 초기화해 주지 않은 변수가 있으면 위와 같은 오류가 발생할 수 있음.