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

 更新时间:2025年10月27日 11:03:09   作者:No8g攻城狮  
在SpringBoot2.1.5项目中,使用MapStruct1.3.0.Final进行实体类字段映射时遇到问题,下面就来具体介绍一下,感兴趣的可以了解一下

一、背景描述

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

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

二、问题原因

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

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

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

原因2:编译问题

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

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

三、解决方案

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

到此这篇关于Java中mapstruct mapper转换器部分字段转换无效的解决方案的文章就介绍到这了,更多相关Java mapstruct mapper转换无效内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • SpringBoot集成Hutool防止XSS攻击的两种解决方法

    SpringBoot集成Hutool防止XSS攻击的两种解决方法

    XSS漏洞是生产上比较常见的问题,本文主要介绍了SpringBoot集成Hutool防止XSS攻击的两种解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-04-04
  • RabbitMQ消息队列中多路复用Channel信道详解

    RabbitMQ消息队列中多路复用Channel信道详解

    这篇文章主要介绍了RabbitMQ消息队列中多路复用Channel信道详解,消息Message是指在应用间传送的数据,消息可以非常简单,比如只包含文本字符串,也可以更复杂,可能包含嵌入对象,需要的朋友可以参考下
    2023-08-08
  • Java字符串拼接详解

    Java字符串拼接详解

    大家好,本篇文章主要讲的是Java字符串拼接详解,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-02-02
  • jpanel设置背景图片的二个小例子

    jpanel设置背景图片的二个小例子

    这篇文章主要介绍了jpanel设置背景图片的二个小例子,实现了动态加载图片做背景的方法,需要的朋友可以参考下
    2014-03-03
  • Java中BigInteger与BigDecimal类用法总结

    Java中BigInteger与BigDecimal类用法总结

    在Java中有两个用于大数字运算的类,分别是java.math.BigInteger类 和 java.math.BigDecimal类,这两个类都可以用于高精度计算,BigInteger类是针对整型大数字的处理类,而BigDecimal类是针对大小数的处理类,接下来带大家来学习一下,在Java中如何处理大数字
    2023-05-05
  • SpringBoot集成selenium实现自动化测试的代码工程

    SpringBoot集成selenium实现自动化测试的代码工程

    Selenium 是支持web 浏览器自动化的一系列工具和[库] 它提供了扩展来模拟用户与浏览器的交互,用于扩展浏览器分配的分发,本文给大家介绍了SpringBoot集成selenium实现自动化测试的代码工程,需要的朋友可以参考下
    2024-08-08
  • Java自定义异常简单示例

    Java自定义异常简单示例

    使用Java内置的异常类可以描述在编程时出现的大部分异常情况,除此之外用户还可以自定义异常,下面这篇文章主要给大家介绍了关于Java自定义异常的相关资料,需要的朋友可以参考下
    2023-04-04
  • 在logback.xml中自定义动态属性的方法

    在logback.xml中自定义动态属性的方法

    这篇文章主要介绍了在logback.xml中自定义动态属性的方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • 关于最长递增子序列问题概述

    关于最长递增子序列问题概述

    本文详细介绍了最长递增子序列问题的定义及两种优化解法:贪心+二分查找和动态规划+状态压缩,贪心+二分查找时间复杂度为O(nlogn),通过维护一个有序的“尾巴”数组来高效地找到最长递增子序列,动态规划+状态压缩则通过状态压缩将空间复杂度优化至O(n)
    2025-02-02
  • Java创建Web项目以及没有web.xml的解决方法

    Java创建Web项目以及没有web.xml的解决方法

    本文详细介绍了如何在Eclipse中创建Web项目并自动生成web.xml,提供了直接生成、新建项目时勾选、手动创建Web.xml三种方法,重点在于web.xml的作用和常见问题解决方案,
    2026-01-01

最新评论