JPA Attribute Converter란?
·
JPA&JDBC
들어가며JPA를 사용하다 보면 엔티티에서 사용하는 값과 데이터베이스에 저장해야 하는 값의 형태가 서로 다른 경우가 있다. 대표적으로 다음과 같은 상황이 있다.엔티티에서는 Boolean을 사용하지만 DB에는 Y, N으로 저장해야 하는 경우개인정보를 DB에 저장하기 전에 암호화해야 하는 경우객체를 JSON 문자열로 변환하여 저장해야 하는 경우Enum을 별도의 코드 값으로 저장해야 하는 경우이러한 변환 로직을 엔티티나 서비스에 직접 작성하면 어떻게 될까? 데이터를 저장할 때마다 DB 형식으로 변환해야 하고, 조회한 뒤에는 다시 엔티티에서 사용하는 형식으로 변환해야 한다.val marketingAgreedValue = if (profile.marketingAgreed) "Y" else "N"반대로 조회할 ..