40.5. MapStruct 설정
MapStruct MapStruct Mapper
클래스를 스캔하려면 camel-mapstruct 구성 요소를 하나 이상의 패키지 이름으로 구성해야 합니다. Mapper
클래스를 MapStruct로 변환할 때 Mapper 클래스를 사용해야 하므로 이 작업이 필요합니다.
예를 들어 두 개의 패키지를 설정하려면 다음과 같이 수행할 수 있습니다.
MapstructComponent mc = context.getComponent("mapstruct", MapstructComponent.class); mc.setMapperPackageName("com.foo.mapper,com.bar.mapper");
MapstructComponent mc = context.getComponent("mapstruct", MapstructComponent.class);
mc.setMapperPackageName("com.foo.mapper,com.bar.mapper");
application.properties
에서 설정할 수도 있습니다.
camel.component.mapstruct.mapper-package-name = com.foo.mapper,com.bar.mapper
camel.component.mapstruct.mapper-package-name = com.foo.mapper,com.bar.mapper
Camel은 시작 시 이러한 패키지를 스캔하여 Mapper
로 끝나는 클래스를 검사합니다. 그런 다음 이러한 클래스를 인트로스펙션하여 매핑 메서드를 검색합니다. 이러한 매핑 방법은 Camel 레지스트리에 등록됩니다. 즉, 유형 변환기를 사용하여 MapStruct로 CloudEvents를 변환할 수도 있습니다. 예를 들면 다음과 같습니다.
from("direct:foo") .convertBodyTo(MyFooDto.class);
from("direct:foo")
.convertBodyTo(MyFooDto.class);
여기서 My>-<Dto
는 MapStruct에서/from으로 변환할 수 있는 VMDK입니다.