| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Java知识库 -> MapStruct 使用注意 -> 正文阅读 |
|
[Java知识库]MapStruct 使用注意 |
MapStruct 应该很多人都使用过,或者正在使用。不得不说,作为一个Java Bean 转换的工具,他表现的很出色:1. 功能强大 2. 编译时插件,不会导致代码运行时额外的耗时开销 3.很容易上手。但是呢,如果使用的过程中不注意细节也是经常会出现问题的。记录一下今天使用的过程中遇到的一个由细节导致的问题。(千里之堤毁于蚁穴……) 场景: 项目内部有两个类 A、B如下:
项目外部有三个类 A1、com.xxx.B1、com.yy.B1 如下: public Class A1 { com.xxx.B1: com.yy.B1: 我现在要做的事情呢,就是要讲项目外部类 A1、B1 转换成 项目内部类 A、B 于是乎,开始做法。按照 MapStruct 的使用方法,创建了 AMppper、BMapper 接口 @Mapper(uses = {BMapper.class}) @Mapper 然后,编译一下代码,以为 大功告成,美滋滋。编译完成之后,看了一下生成的 类,发现咦!实现类里 没有 BMapper ! pulic class AMapperImpl implements AMapper{ @Override
} 期望的应该是这样的: pulic class AMapperImpl implements AMapper{
} 为什么会这样呢?来,我们5个WHY 走起…… …… 原来如此,A1 类中引入的 B1 类和 BMapper 中的convertInfo方法入参 B1 类不是同一个类。 卒! |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 2:42:54- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |