mapstruct的使用

引入依赖

  <dependency>
            <groupId>org.mapstruct</groupId>
            <artifactId>mapstruct</artifactId>
            <version>1.3.1.Final</version>
        </dependency>
        <dependency>
            <groupId>org.mapstruct</groupId>
            <artifactId>mapstruct-processor</artifactId>
            <version>1.3.1.Final</version>
        </dependency>

新建一个抽象类或者接口并标注@Mapper

 @Mapper映射规则

默认映射规则
同类型日同名的属性,会自动映射

 mapstruct会自动进行类型转换
1.8种基本类型和他们对应的包装类型之间

2.8种基本类型(包括他们的包装类型)和string之间
3.日期类型和string之间 

@Mapping和@Mappings 

指定属性之间的映射关系
日期格式化:dateFormat="yyyy-MM-dd HH:mm:ss'。

数字格式化:numberFormat="#.00”

ignore
属性是引用对象的映射处理


自定义映射处理

批量转换

@BeanMapping

配置忽略mapstruct的默认映射行为,只映时那些配置了@Mapping的属性

 @InheritConfiguration

当carDTO更新后VehicleVO也更新

@InheritInverseConfiguration

反向映射:a转b,使用@InheritInverseConfiguration可以实现b转a

注意:只继承@Mappin注解配置,不会继承@BeanMapping

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值