Spring MVC 2편 스프링 타입 컨버터

신재원·2023년 3월 22일
1

Spring MVC 2편

목록 보기
23/26
  • 문자를 숫자로 변환하거나, 반대로 숫자를 문자로 변환해야 하는것처럼 애플리케이션을 개발하다 보면 타입을 변환해야 하는 경우가 상당히 많다.
  • 예시
    (http://localhost:8080/hello-v1?data=10)
    HTTP 쿼리 스트링으로 전달하는 data = 10은 숫자가 아닌 문자 "10"이다

    스프링이 제공해주는 @RequestParam 어노테이션을 사용하면 문자 10을 Integer타입의 숫자 10으로 스프링이 중간에서 변환해준다.

스프링은 확장 가능한 컨버터 인터페이스를 제공한다

  • X -> Y 타입으로 변환하는 컨버터 인터페이스를 만들고,
    Y -> X 타입으로 변환하는 컨버터 인터페이스를 만들어서 등록하면된다.

🐱‍🏍 타입 컨버터 - Converter

! 주의
org.springframework.core.convert.converter.Converter 인터페이스를 사용해야된다.

  • 예시
    ( Converter<입력값, 반환값>)
  • 객체를 변환할수도 있다.

스프링은 용도에 따라 다양한 방식의 타입 컨버터를 제공한다.
Converter : 기본 컨버터

🐱‍🏍 컨버전 서비스 - ConversionService

  • 타입 컨버터를 하나하나 직접 찾아서 타입 변환하는것은 불편하다
    • 편리하게 사용할수 있는 기능을 제공 : ConversionService
  • 예시
    (DefaultConversionService를 사용하여 컨버터를 등록할수있다)
    (반환 타입 클래스를 설정하면 자동으로 제네릭을 판단하여 반환해준다)

0개의 댓글