MapStruct - 概览



MapStruct 是一个注释处理器,已插入 Java 编译器。插入后,maven 和 gradle 等命令行工具会使用它处理映射注释,以在编译时创建映射器类。

何时需要映射?

在多层应用程序中,数据对象用于从数据库获取数据,并且 UI 会与模型互动。现在,获取到数据模型中的数据要求映射到模型或 java bean,以传递到 UI。考虑以下情况。

与数据库连接的实体类。

StudentEntity.java

@Entity
class StudentEntity {
   String id;
   String name;
}

与 UI 连接的模型类。

Student.java

class Student {
   String id;
   String name;
}

MapStruct 如何工作?

MapStruct 使用注释自动化创建映射器以映射数据对象和模型对象的过程。它在编译时创建映射器实现,这有助于开发人员找出开发过程中的错误,并且便于理解。例如 -

StudentMapper.java

@Mapper
class StudentMapper {
   StudentMapper INSTANCE = Mappers.getMapper( StudentMapper.class );   
   StudentEntity modelToEntity(Student student);
}

现在 StudentMapper.INSTANCE 可以轻松地用来获取映射的对象。

StudentEntity studentEntity = StudentMapper.INSTANCE.modelToEntity(student);
广告
© . All rights reserved.