如何在Map结构中完全禁用使用“构建器”?我根本不想使用它们,因为它们会给我带来各种各样的问题。
我在META-INF下创建了服务文件(我更喜欢一种将其分配给映射构建器=的方法,但我没有看到任何如何在代码中正确执行此操作的示例)。
它仍在尝试使用我想映射到的“ModifiableXXX”实例的不可变“构建器”实例。如果可用,我什至采取一种方法将其强制为可修改类型。
在另一个映射中,使用更新ModifableXXX(使用@AfterMapping和@MappingTarget)方法有效。
我的绘图器现在看起来像这样:
@Mapper
public interface MongoProjectMapper
{
ModifiableProject mapModel(MongoProject project);
@AfterMapping
ModifiableProject updateProject(MongoEntity e, @MappingTarget ModifiableProject p);
}
通过< code>NoOpBuilderProvider可以完全禁用生成器。您需要在< code>META-INF/services目录中创建一个< code > org . map struct . AP . SPI . builder provider 文件,以< code > org . map struct . AP . SPI . noopbuilderprovider 作为其内容。这将完全禁用构建器。
有一个功能请求可以使其更精细化,并通过@BeanMapping
或在映射器级别禁用它。查看mapstruct/mapstruct#1661
从Mapstruct版本1.3.1.Final我们可以使用注释org.mapstruct.Builder#disableBuilder:@BeanMap、@Mapper或@MapperConfig
@Mapper(builder = @Builder(disableBuilder = true))
public interface ProjectMapper
查看#mapping with builder和文档
解决方案: 我不得不更改我的和的顺序。 我必须将放在之上,然后它就起作用了。 我将下面的pom更新到工作版本,所以这里没有非工作代码。 我还将lombok版本转换回当前版本,而不是使用edge版本。 原始问题: 我有2个或多或少相同的类集(见下面的示例) 一组是我的API的DTO,我希望它是不可变的,使用Lombok的@Value和@Builder 一组是要存储在数据库中的实体。使用Lombok的
我在使地图结构和不可变文件正常工作时遇到问题。 要测试的主类 我得到的错误是 我的如下 根据参考,这应该都是开箱即用的。我在这里错过了什么?
在两行中编写一段代码,即交换两个变量而不使用第三个变量。在java中有可能吗
我理解如何通过使用算法来验证信用卡。 但我想知道如何反向工程的问题,并创建新的有效信用卡号码
事实上,我正在制作一个Minecraft插件,我想知道一些插件(不使用DB)是如何在服务器关闭时保存信息的。 例如,如果我们制作了一个等级插件,并创建了一个不同的列表,或者我们将构成每个等级插件的玩家堆叠起来。当服务器关闭并随后重新启动时,列表将再次变为空(当我初始化它们时)。 所以我想知道是否有人知道如何保存这些信息。
问题内容: 有没有一种方法可以在python循环中生成变量名并为其分配值?例如,如果我有 我想要 我可以在一个循环或某事做,而不是手动分配,等等。 编辑 许多人建议我写一个要求这样做的理由。首先,有些时候我认为这可能比使用列表更方便…我不记得确切的时间,但是我想我想过在有很多嵌套级别时使用它。例如,如果具有列表列表的列表,则以上述方式定义变量可能有助于降低嵌套级别。第二,今天我在尝试学习使用Pyt