ktmapping 是基于ksp实现的kotlin专用的类mapstruct的映射工具
- 从Map/ResultSet映射到实体类
- 以Map/ResultSet/实体类中的属性更新实体类
- Map/ResultSet映射到实体类时根据配置的命名风格自动映射Map/Result中的属性
- 来源对象的多个字段映射到目标对象的一个字段
- 来源对象的一个字段映射到目标对象的多个字段
- 编译期类型安全
- 所有属性复制都是浅拷贝
- 以Map/ResultSet作为数据来源时生成的代码不是类型安全的,但是会在运行时抛出更加友好的错误提示
- 不支持类型转换
默认映射规则:默认按照属性名映射,实体类属性需要getter和setter,以Map/ResultSet为数据源时会假设数据源包含目标对象需要的所有属性
- 参数个数为1,类型为Map/ResultSet/自定义实体类
- 返回值为自定义实体类
- 创建目标对象时选择的构造器的规则:有主构造器用主构造器,没有主构造器时取参数最少的构造器
- 构造器可见性必须为public
- 参数个数为2,第一个参数类型为Map/ResultSet/自定义实体类,第二个参数为自定义实体类
- 返回值为Unit
- 目标对象有可变属性