logo

Kotlin 기반 경량 ORM Exposed 추가 정리 part 3

language-logoKotlin
language-logoJava

• JPA에서는 @Converter를 사용하여 데이터를 저장하거나 가져올 때 필요한 컨버팅을 제어할 수 있습니다. Exposed에서는 이와 같은 기능을 VarCharColumnType를 확장하여 사용할 수 있습니다. 예를 들어, title 필드에서 불필요한 공백을 제거하려면 VarCharColumnType를 확장하여 TrimmingWhitespaceConverterColumnType 클래스를 구현할 수 있습니다.
• TrimmingWhitespaceConverterColumnType 클래스에서는 valueToDB 메소드에 데이터 저장소에 들어가는 컨버팅 로직을, valueFromDB 메소드에는 데이터베이스에서 가져온 데이터에 대한 컨버팅 로직을 작성합니다. 이 로직은 공백을 제거하는 trim() 함수를 사용합니다. 이후, registerColumn을 사용하여 Converter 코드를 적용시킵니다.
• 앞뒤 공백이 있는 문자열에 대해 데이터베이스에서 Converter 로직이 정상적으로 작동하는지 테스트하였고, 공백이 제거된 'yun kim'으로 출력되는 것을 확인하였습니다.
• 자주 사용되는 SQL 기능들에 대해 이미 구현하여 제공하고 있으며, 이 중 groupConcat 기능을 예제 코드를 통해 살펴보았습니다. 이를 통해 email 필드가 varchar 타입인 구조에서 groupConcat 메서드를 사용할 수 있음을 확인하였습니다.

thumbnail
북마크
공유하기
신고하기
4분 분량
조회수 249
profile-imageyun0
2년 전
Copyright © 2025. Codenary All Rights Reserved.