[Spring JPA] @Converter 엔티티 값을 변환하여 저장하기
2022. 3. 16. 22:40
반응형
엔티티에서 Boolean형을 Database에서는 'Y' 또는 'N'으로 Char(1) 형으로 처리하고 싶을 때 @Converter 어노테이션으 사용하여 해결한다.
1. Converter 객체 생성
BooleanToYNConverter.java
@Converter
public class BooleanToYNConverter implements AttributeConverter<Boolean, String> {
@Override
public String convertToDatabaseColumn(Boolean attribute) {
return (attribute != null&& attribute) ? "Y" : "N";
}
@Override
public Boolean convertToEntityAttribute(String yn) {
return "Y".equalsIgnoreCase(yn);
}
}
* AttributeConverter 인터페이스
public interface AttributeConverter<X, Y> {
Y convertToDatabaseColumn(X var1);
X convertToEntityAttribute(Y var1);
}
2. Entity에 Converter 적용
적용하고 싶은 필드에 @Convert 어노테이션을 붙인다.
@Entity
@Table
@Getter
public class Member {
// ... 중략 ...
@Covert(converter = BooleanToYNConverter.class)
private boolean isActive;
}
728x90
반응형
'web > Spring' 카테고리의 다른 글
[Spring JPA] JPQL - FETCH JOIN 페치 조인 (2) | 2022.03.21 |
---|---|
[Spring JPA] JPA Criteria Queries (0) | 2022.03.17 |
[Spring] Thymeleaf 타임리프 string.equals를 이용하여 문자열 비교 (0) | 2022.03.15 |
[Spring] 설정 값 분리의 필요성과 @Value의 사용법 및 동작 과정 (0) | 2022.03.14 |
[Spring Boot] hibernate.hbm2ddl.auto 속성 정리 (0) | 2022.03.10 |
Written by ner.o
개발자 네로의 개발 일기,
자바를 좋아합니다 !
댓글 개