MapStruct Java映射工具

时间:2024-02-01 13:39:15

关于对象的拷贝 

BeanUtils.copyProperties ()  

可以实现对象的简单拷贝,但是局限比较大,而且性能不及 MapStruct

 

接下去是使用 MapStruct 

工程中引入 maven 依赖

 

以下是我写的一个例子

一、成员变量名相同时的使用

1.对象student

2.对象studentVO

3.写一个Mapper接口StudentMapper,此处的Mapper注解不是MyBtais的Mapper注解。

4.在test类中测试

5.结果

 

中间报错 

java.lang.ClassNotFoundException: Cannot find implementation for com.xquant....................

发现注解@Mapper引用的jar包是对的(org.mapstruct),再一到target/generated-sources目录下查找实现类,发现没有.

说明没有自动生成转换的类  重新编译项目  或者 直接重启软件

 

 

二、成员变量名不相同时的使用

Studnet类的age和name与StudentVO类的ageVO和nameVO对应不上时

 

 

结果

 

 三、多参数

 

 

 

 

 

 结果

 

 

四、多层嵌套

 

 

 

 

 

 

 

 

 

 结果

 

 另外就不一一讲解了