3.4.5 ConversionService 구성

ConversionService는 응용 프로그램 구동 시에 인스턴스 화 된 다음에 여러 스레드 간에 공유되도록 설계된 무 상태의 객체입니다. 스프링 어플리케이션에서는 일반적으로 각 스프링 컨테이너(또는 ApplicationContext)에 대해 ConversionService인스턴스를 구성합니다. 스프링은 해당 ConversionService를 선택하고 프레임 워크에서 타입 변환을 수행할 때마다 이것을 사용합니다. 이 ConversionService를 임의의 빈에 주입하여 직접 호출할 수도 있습니다.

ConversionService가 스프링에 등록되어 있지 않으면, 원래의 PropertyEditor기반의 시스템이 사용됩니다.

기본 ConversionService를 스프링에 등록하려면, 다음 빈 정의를 ConversionServiceid와 함께 추가하십시오.

<bean id="conversionService"
    class="org.springframework.context.support.ConversionServiceFactoryBean"/>

기본 ConversionService는 문자열, 숫자, 열거 형, 컬렉션, Map 및 기타 일반 타입 간에 변환할 수 있습니다. 사용자 지정 Converter를 사용하여 기본 Converter를 보완하거나 무시하려면 converters속성을 설정하십시오. 속성 값은 Converter, ConverterFactory또는 GenericConverter인터페이스 중 하나를 구현할 수 있습니다.

<bean id="conversionService"
        class="org.springframework.context.support.ConversionServiceFactoryBean">
    <property name="converters">
        <set>
            <bean class="example.MyCustomConverter"/>
        </set>
    </property>
</bean>

Spring 3에서는 타입 변환을 위해 Run-time 시에 사용되는 ConversionService 빈을 'conversionService'라는 이름으로 찾는다. 따라서 다른 용도의 빈을 'conversionService'라는 이름으로 등록해서는 안된다.

또한 스프링 MVC 어플리케이션 내에서 ConversionService를 사용하는 것이 일반적입니다. 스프링 MVC 장의 Conversion and Formatting 을 보십시오.

경우에 따라, 변환 중에 서식을 적용할 수도 있습니다. usingFormattingConversionServiceFactoryBean사용에 대한 자세한 내용은 FormatterRegistrySPI를 참조하십시오.

Last updated