- MapStruct 教程
- MapStruct - 首頁
- MapStruct - 概覽
- MapStruct - 環境設定
- 對映
- MapStruct - 基本對映
- MapStruct - 自定義對映
- MapStruct - 多重對映
- MapStruct - 巢狀 Bean 的對映
- MapStruct - 直接欄位對映
- MapStruct - 構建器
- 資料型別轉換
- MapStruct - 隱式型別轉換
- MapStruct - 使用 numberFormat
- MapStruct - 使用 dateFormat
- MapStruct - 使用表示式
- MapStruct - 使用常量
- MapStruct - 使用 defaultValue
- MapStruct - 使用 defaultExpression
- 對映集合
- MapStruct - 對映列表
- MapStruct - 對映對映
- 其他內容
- MapStruct - 對映 Stream
- MapStruct - 對映列舉
- MapStruct - 丟擲異常
- MapStruct - 自定義對映器
- MapStruct 有用資源
- MapStruct - 快速指南
- MapStruct - 有用資源
- MapStruct - 討論
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);
廣告