2.75. MapStruct
使用 Mapstruct 类型 Conversion
2.75.1. 什么是内部 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
-
mapstruct 组件, URI 语法:
mapstruct:className
有关用法和配置详情,请参阅上述链接。
2.75.2. Maven 协调 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
在 code.quarkus.redhat.com 上使用此扩展创建新项目
或者将协调添加到现有项目中:
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-mapstruct</artifactId>
</dependency>
2.75.3. 使用方法 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
2.75.3.1. 注解处理器 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
要使用 MapStruct,您必须将构建配置为使用注解处理器。
2.75.3.1.1. Maven 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<annotationProcessorPaths>
<path>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-processor</artifactId>
<version>{mapstruct-version}</version>
</path>
</annotationProcessorPaths>
</configuration>
</plugin>
</plugins>
2.75.3.1.2. gradle 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
dependencies {
annotationProcessor 'org.mapstruct:mapstruct-processor:{mapstruct-version}'
testAnnotationProcessor 'org.mapstruct:mapstruct-processor:{mapstruct-version}'
}
2.75.3.2. 映射器定义发现 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
默认情况下,{project-name} 将自动发现 @Mapper 注解的接口或抽象类的软件包路径,并将它们传递给 Camel MapStruct 组件。
如果要更精细地控制扫描的特定软件包,您可以在 application.properties 中设置配置属性。
camel.component.mapstruct.mapper-package-name = com.first.package,org.second.package