为什么我在使用Jhister时需要mapstruct? [英] Why do I need mapstruct for when using Jhipster?

查看:22
本文介绍了为什么我在使用Jhister时需要mapstruct?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我阅读mapstruct文档时,他们说:MapStruct是用于生成类型安全的Bean映射类的Java批注处理器。

https://mapstruct.org/documentation/stable/reference/html/#introduction

这就只剩下我的问题了。为什么我需要mapstruct?Jhister使用它,我不知道他们一开始为什么需要它?为什么您需要在Jhister内部进行映射。

他们还提到……与手工编写映射代码相比,MapStruct通过生成繁琐且容易出错的代码来节省时间。所以它节省了时间,但并不能解释你为什么需要它,对吗?

谢谢。我希望他们能根据这里写下的疑虑和解释修改文档。

推荐答案

JHipster使用MapStruct生成代码,用于将实体映射到DTO或从DTO映射实体,如https://www.jhipster.tech/using-dtos/

中所述

您可以通过将生成的Mapper类复制到源树中,然后手动演化它们来消除它。如果您不打算在项目引导之外使用JHipster,并且/或者想要构建对MapStruct来说太复杂的DTO,这可能会很有用。

乍听起来可能需要做更多的工作,但这是简单的代码,您无论如何都需要在前端代码中执行相同的操作。

基本上,映射器是一个简单的服务,它将实体映射到数据传输对象,或从数据传输对象映射实体。它不需要任何库来这样做,也不需要实现任何特定的接口,您只需从从getters获得的值调用编写器。

如果您不想从头开始,假设您已经定义了一个Book实体,您可以通过在target目录中搜索由MapStruct生成的BookMapperImpl.java类来找到一个示例。然后,您可以将其复制到src目录,在BookMapperImpl中删除mapstruct导入,删除BookMapper接口并将BookMapperImpl重命名为BookMapper

这篇关于为什么我在使用Jhister时需要mapstruct?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆