MapStruct 添加 Maven 依赖
一则或许对你有用的小广告
欢迎加入小哈的星球 ,你将获得:专属的项目实战 / 1v1 提问 / Java 学习路线 / 学习打卡 / 每月赠书 / 社群讨论
- 新项目:《从零手撸:仿小红书(微服务架构)》 正在持续爆肝中,基于
Spring Cloud Alibaba + Spring Boot 3.x + JDK 17...
,点击查看项目介绍 - 《从零手撸:前后端分离博客项目(全栈开发)》 2 期已完结,演示链接: http://116.62.199.48/
截止目前, 星球 内专栏累计输出 72w+ 字,讲解图 3103+ 张,还在持续爆肝中.. 后续还会上新更多项目,目标是将 Java 领域典型的项目都整一波,如秒杀系统, 在线商城, IM 即时通讯,权限管理,Spring Cloud Alibaba 微服务等等,已有 2400+ 小伙伴加入学习 ,欢迎点击围观
要想在项目中使用 MapStruct,首先,需要在 Maven 项目中添加 MapStruct 依赖。
1. 添加核心依赖
将 MapStruct 核心库添加到项目的 pom.xml
文件中。下面是 MapStruct 核心依赖的示例:
<dependency>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct</artifactId>
<version>1.5.5.Final</version> <!-- 使用时请检查最新版本 -->
</dependency>
提示:你可以访问 MapStruct 的官方页面 以获取最新的依赖版本。
2. 添加编译器插件
除了核心库,还需要添加 MapStruct 的编译器插件。这是因为 MapStruct 在编译时生成映射代码。为此,我们需要在 pom.xml
中的 <build>
部分添加以下插件:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version> <!-- 使用时请检查最新版本 -->
<configuration>
<source>1.8</source> <!-- 根据你的 JDK 版本进行调整 -->
<target>1.8</target> <!-- 根据你的 JDK 版本进行调整 -->
<annotationProcessorPaths>
<path>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-processor</artifactId>
<version>1.5.5.Final</version> <!-- 使用时请检查最新版本 -->
</path>
</annotationProcessorPaths>
</configuration>
</plugin>
</plugins>
</build>
这里,我们添加了 maven-compiler-plugin
插件并为其配置了 MapStruct 的注解处理器 mapstruct-processor
。这确保在编译项目时,MapStruct 会生成必要的映射实现代码。
3. 校验配置
为确保一切都正确配置,可以尝试编写一个简单的 MapStruct 接口并编译项目。如果项目成功编译,并且在 target/generated-sources
目录下生成了相应的映射实现类,那么配置应该就没问题。
@Mapper
public interface CarMapper {
CarMapper INSTANCE = Mappers.getMapper(CarMapper.class);
CarDto carToCarDto(Car car);
}
编译后,应该可以在上述目录下看到一个名为 CarMapperImpl
的类。
总结
MapStruct 是一个功能强大的对象映射工具,它通过在编译时自动生成代码来实现映射,从而避免了运行时的性能开销。通过正确配置 Maven 依赖和插件,我们可以轻松地在项目中集成 MapStruct 并开始使用其强大的功能。