Spring Boot
[JPA] 빈 문자열을 null로 저장하는 converter 만들기
유저인사이트 강윤구
2022. 8. 4. 13:39
728x90
JPA를 사용하여 웹 서비스를 개발하다보면 Form 전송을 해야 하는 경우가 많이 발생하는데 문자열을 담는 필드를 전송하다보면 의도치않게 null값이 아닌 empty-string이 삽입되는 경우가 발생한다.
따라서 빈 문자열이 데이터베이스에 저장될 때 null로 변환해주는 converter를 만들어 필드에 적용한다.
EmptyStringToNullConverter.java
@Converter
public class EmptyStringToNullConverter implements AttributeConverter<String, String> {
@Override
public String convertToDatabaseColumn(String string) {
return StringUtils.trimToNull(string);
}
@Override
public String convertToEntityAttribute(String dbData) {
return dbData;
}
}
converter 적용
@Size(max = 10)
@Convert(converter = EmptyStringToNullConverter.class)
@Column(name = "division_group")
private String divisionGroup;
728x90