Skip to content

MapStruct使用总结

什么是 MapStruct?

MapStruct 是一个代码生成器,主要用于 Java Bean 之间的映射,如 entity 到 DTO 的映射。

SpringBoot 接入

导入 Maven 依赖以及插件

<!-- MapStruct domain 映射工具 -->
        <dependency>
            <groupId>org.mapstruct</groupId>
            <artifactId>mapstruct</artifactId>
            <version>${mapstruct.version}</version>
        </dependency>
    </dependencies>
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.5.1</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
                <annotationProcessorPaths>
                    <path>
                        <groupId>org.mapstruct</groupId>
                        <artifactId>mapstruct-processor</artifactId>
                        <version>${org.mapstruct.version}</version>
                    </path>
                </annotationProcessorPaths>
            </configuration>
        </plugin>
    </plugins>
</build>

https://refblogs.com/article/896

MapStruct转换出的对象属性都是null

https://www.cnblogs.com/milkbox/p/18541517

idea构建问题

  • 没有构建输出
    1. mapstruct和lombok都需要显示制定版本,否则idea会识别异常

下图的数据都是idea自动生成的,如果有不一样的,需要退出idea,重新打开。

image-20250710155152578