使用 Orika 将实体层次结构映射到 DTO 层次结构

达维欧

当对象都属于类层次结构时,是否可以将对象映射到其对应的 DTO?

例如:我有一个BaseEntity和一些ExtendedEntity1..ExtendedEntityN

在另一边我有一个BaseDTO和一些ExtendedDTO1..ExtendedDTON

然后我有一个服务方法:

public BaseDTO getById(String id) {
    return orikaMapper.map(repository.findOne(id), BaseDTO.class);
}

这样BaseDTO显然总是得到一个,但我想将实体映射到正确的 DTO 类型......

有没有办法实现这一目标?我不会使用switch或检查instanceof解决方法......

达维欧

还没有发现更好的解决方案(如果存在的话),所以我会这样:

Map<Class<? extends BaseEntity>, Class<? extends BaseDTO>> dtoMappings;

我正在定义一个映射Map,在其中放置实体和 DTO 之间的所有关联。然后在我的方法中:

public BaseDTO getById(String id) {
    BaseEntity e = repository.findOne(id);
    return orikaMapper.map(repository.findOne(id), dtoMappings.get(e.getClass()));
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将JPA实体映射到继承层次结构

来自分类Dev

使用Python异常层次结构

来自分类Dev

如何使用层次结构子查询构建层次结构路径

来自分类Dev

使用实体框架在层次结构中映射父级子级

来自分类Dev

将类层次结构映射到数据库

来自分类Dev

如何将余烬对象层次结构映射到Haxe

来自分类Dev

Scala的层次结构映射到Java的

来自分类Dev

无法使用LUIS API创建实体层次结构

来自分类Dev

使用Spring JDBC Rowmapper映射层次结构数据

来自分类Dev

如何使用gson解析类层次结构?

来自分类Dev

如何使用Linq投影层次结构?

来自分类Dev

使用MS SQL处理XML层次结构

来自分类Dev

使用实例类型与ID的类层次结构

来自分类Dev

如何使用XSLT排列节点层次结构?

来自分类Dev

无法使用调试视图层次结构

来自分类Dev

Git:使用父层次结构克隆仓库

来自分类Dev

使用PostgreSQL进行类别树层次结构

来自分类Dev

在SQL的层次结构列上使用分组依据

来自分类Dev

使用MDX从层次结构中删除成员

来自分类Dev

未使用Buddypress模板层次结构

来自分类Dev

使用NIB创建复杂的VC层次结构

来自分类Dev

如何使用Linq投影层次结构?

来自分类Dev

无法使用调试视图层次结构

来自分类Dev

使用 XSLT 展平 xml 层次结构

来自分类Dev

Java 和类层次结构的正确使用

来自分类Dev

使用MapStruct的DI将实体映射到DTO

来自分类Dev

使用select将Entity Framework实体映射到dto对象

来自分类Dev

使用LINQ将平面列表合并到层次结构中

来自分类Dev

将QDeclarativeContext层次结构与QDeclarativeView一起使用