MapStruct

Java中用来做不同对象之间的转换(DTO,PO,VO等),使用方式简单,只需要按规则写一个相关接口,就能直接完成对象间的转换。MapStruct 是一个 Java 注释处理器,用于生成类型安全的 bean 映射类。在编译期间,MapStruct 将生成此接口的实现。这个实现使用普通的 Java 方法调用(get,set方法)来映射源对象和目标对象,而不是使用反射。
依赖:

        <dependency>
            <groupId>org.mapstructgroupId>
            <artifactId>mapstructartifactId>
            <version>1.3.0.Finalversion>
        dependency>
        <dependency>
            <groupId>org.mapstructgroupId>
            <artifactId>mapstruct-processorartifactId>
            <version>1.3.0.Finalversion>
        dependency>

定义:

@Mapper(componentModel = "spring")
public interface XXXXBeanUtil {
    XXXXBeanUtil INSTANCE = Mappers.getMapper(XXXXBeanUtil.class);
    XXXXPO dtoToPo(XXXDTO source);
    List<XXXXPO> listDtoToPo(List<XXXDTO> source);
    XXXXVO dtoToVo(XXXDTO source);
    XXXXVO poToVo(XXXPO source);
}

调用:

XXXXPO xxxPo = XXXXBeanUtil.INSTANCE.dtoToPo(XXXDTO);

若定义时间不写:

XXXXBeanUtil INSTANCE = Mappers.getMapper(XXXXBeanUtil.class);

则调用时间可先通过Autowired注入

@Autowired
private XXXXBeanUtil xxxxBeanUtil;

............

XXXXPO xxxPo = xxxxBeanUtil.dtoToPo(XXXDTO);

你可能感兴趣的:(java)