ETC/Exception

    [JPA]~~Entity cannot be cast to java.io.Serializleat org.hibernate.type.ManyToOneType.hydate(ManyToOneType.java)

    이슈 발생 원인 - Entity와 Entity의 연관관계중, ID값이 아닌, 특정 컬럼과 연관관계를 맺는경우 아래와 같이 사용해야하는데 @JoinColumn(name = "해당_테이블_컬럼_이름", referencedColumnName = "반대쪽_컬럼_이름") 이 경우 Serializable을 구현해주지 않으면 위 제목과 같은 에러를 만나게 된다. 이유: 영속성 컨텍스트는 엔티티의 PK를 사용해서 엔티티를 관리하는데, JPA를 구현한 하이버네이트 입장에서 지금 PK가 아닌 다른 기준(UNIQUE 필드)으로 데이터를 한번 조회하고, 그 결과에 있는 PK를 다시 찾은 다음에 영속성 컨텍스트에 관리해야 합니다. 이 과정을 풀어내기 위해 하이버네이트 구현체는 객체를 임시로 직렬화(Serializable)해서 ..