问题描述
我正在尝试包含一个映射器来将 DTO 转换为域模型。这是示例存储库
class StudentRepository(service: StudentService,studentMapper: Mapper<StudentDTO,StudentModel>) {
fun fetchRecords(student: StudentModel): List<StudentModel> {
val result = service.getAllRecords(student.id) //Q1
return studentMapper.map(result)
}
}
映射器看起来像这样。
class StudentMapper : Mapper<StudentDTO,StudentModel> {
override fun map(dto: StudentDTO): StudentModel {
return StudentModel().apply { //transform each field }
}
}
关于这个实现我有几个问题。
- 是否可以使用“Q1”中提到的模型对象?
- 此处将模型对象映射到 DTO 的最佳方法是什么?
解决方法
StudentModel 和 StudentDTO 有什么区别?