【mapstruct】Java 中 mapstruct mapper 转换器部分字段转换无效的解决方案

简介: 【mapstruct】Java 中 mapstruct mapper 转换器部分字段转换无效的解决方案

一、背景描述

springboot 2.1.5 + mapstruct 1.3.0.Final + maven管理工具

接手一个项目,根据需求需要对其接口进行修改,对于两个实体类字段赋值,项目中使用 mapstruct 框架自动映射对应字段。对于其中一个实体类中,新增加了两个字段,重启项目使用 swagger 调用测试,发现新增加的字段映射失败,没有把新增的两个字段的值赋值过去,而其他字段则可以正常赋值。

二、问题原因

对于这个现象,有两个原因,以下详细说明一下:

原因一:映射的字段不一致

首先怀疑两个字段需要映射的字段写的不一致,检查完之后发现需要映射的两个字段与被映射的字段一模一样,最终排除掉此原因。

原因2:编译问题

使用 mapstruct 框架,对于需要映射的实体类,会先自动编译好之后存入 target 目录,而 idea 开发工具的重启并没有清空 target 目录下已经编译好的文件,所以导致新增加的两个字段即使重启项目也没有自动映射。

重启后的项目 target 目录下,还是之前编译好的文件,因此新增加的两个字段没有自动映射。

三、解决方案

使用 maven 自带插件,对项目 clean 一下,然后再重新启动,即可解决此问题。

完结!

相关文章
|
2月前
|
关系型数据库 MySQL Java
【IDEA】java后台操作mysql数据库驱动常见错误解决方案
【IDEA】java后台操作mysql数据库驱动常见错误解决方案
102 0
|
22天前
|
设计模式 Java 开发者
Java多线程编程的陷阱与解决方案####
本文深入探讨了Java多线程编程中常见的问题及其解决策略。通过分析竞态条件、死锁、活锁等典型场景,并结合代码示例和实用技巧,帮助开发者有效避免这些陷阱,提升并发程序的稳定性和性能。 ####
|
1月前
|
安全 Java 开发者
Java多线程编程中的常见问题与解决方案
本文深入探讨了Java多线程编程中常见的问题,包括线程安全问题、死锁、竞态条件等,并提供了相应的解决策略。文章首先介绍了多线程的基础知识,随后详细分析了每个问题的产生原因和典型场景,最后提出了实用的解决方案,旨在帮助开发者提高多线程程序的稳定性和性能。
|
1月前
|
人工智能 监控 数据可视化
Java智慧工地信息管理平台源码 智慧工地信息化解决方案SaaS源码 支持二次开发
智慧工地系统是依托物联网、互联网、AI、可视化建立的大数据管理平台,是一种全新的管理模式,能够实现劳务管理、安全施工、绿色施工的智能化和互联网化。围绕施工现场管理的人、机、料、法、环五大维度,以及施工过程管理的进度、质量、安全三大体系为基础应用,实现全面高效的工程管理需求,满足工地多角色、多视角的有效监管,实现工程建设管理的降本增效,为监管平台提供数据支撑。
40 3
|
1月前
|
Java API Apache
|
2月前
|
Java
短频快task的java解决方案
本文探讨了Java自带WorkStealingPool的缺陷,特别是在任务中断方面的不足。普通线程池在处理短频快任务时存在锁竞争问题,导致性能损耗。文章提出了一种基于任务窃取机制的优化方案,通过设计合理的窃取逻辑和减少性能损耗,实现了任务的高效执行和资源的充分利用。最后总结了不同场景下应选择的线程池类型。
|
2月前
|
SQL 分布式计算 Java
Hadoop-11-MapReduce JOIN 操作的Java实现 Driver Mapper Reducer具体实现逻辑 模拟SQL进行联表操作
Hadoop-11-MapReduce JOIN 操作的Java实现 Driver Mapper Reducer具体实现逻辑 模拟SQL进行联表操作
43 3
|
2月前
|
分布式计算 资源调度 Hadoop
Hadoop-10-HDFS集群 Java实现MapReduce WordCount计算 Hadoop序列化 编写Mapper和Reducer和Driver 附带POM 详细代码 图文等内容
Hadoop-10-HDFS集群 Java实现MapReduce WordCount计算 Hadoop序列化 编写Mapper和Reducer和Driver 附带POM 详细代码 图文等内容
110 3
|
2月前
|
小程序 Java
小程序访问java后台失败解决方案
小程序访问java后台失败解决方案
54 2
|
3月前
|
传感器 监控 数据可视化
【Java】智慧工地解决方案源码和所需关键技术
智慧工地解决方案是一种新的工程全生命周期管理理念。它通过使用各种传感器、数传终端等物联网手段获取工程施工过程信息,并上传到云平台,以保障数据安全。
87 7
下一篇
DataWorks