Appearance
当然可以,让我们假设你有一个PlaceDO的实例,它包含了你从数据库中查询出来的数据: PlaceDO placeDO = new PlaceDO(); placeDO.setName("MyPlace"); placeDO.setStatus((byte)1); placeDO.setCreateTime(LocalDateTime.now());
你需要将这个数据对象(PlaceDO)转换成视图对象(PlaceRespVO),以便在前端展示。这时,你可以调用PlaceConvert接口的convert方法来完成这个转换: PlaceRespVO placeRespVO = PlaceConvert.INSTANCE.convert(placeDO);
转换完成后,你就得到了一个PlaceRespVO的实例,它包含了同样的数据,但是其结构可能会更适合前端的展示。
如果你不使用MapStruct,那么你需要手动编写转换的代码,如下所示: PlaceRespVO placeRespVO = new PlaceRespVO(); placeRespVO.setName(placeDO.getName()); placeRespVO.setStatus(placeDO.getStatus()); placeRespVO.setCreateTime(placeDO.getCreateTime());
这看起来可能并不困难,但是当你有很多这样的数据对象需要转换,或者当你的数据对象的结构更复杂时,手动编写转换代码就会变得非常繁琐和容易出错。MapStruct可以帮助你自动生成这些转换代码,从而简化你的工作。
