gpt4 book ai didi

java - Mapstruct 生成用于依赖注入(inject)的构造函数

转载 作者:行者123 更新时间:2023-12-03 08:26:25 28 4
gpt4 key购买 nike

我正在尝试在 MapStruct 中生成一个实现,它将为我创建一个构造函数,我可以将其用于基于构造函数的依赖项注入(inject)。我了解到我不能在映射器定义中使用构造函数注入(inject)(见下文),但如何才能使我生成的类拥有一个构造函数注入(inject)?

我尝试过以下方法:

@Mapper(componentModel = "spring", uses = Dependency.class, injectionStrategy = InjectionStrategy.CONSTRUCTOR)
public abstract class MapStructTest {
private Dependency dependency;

@Mapping(source = "field", target "target")
@Mapping(target = "target2", ignore = true)
@AfterMapping
public final void runAfter() {
//dostuff for target2
}
}

没有成功。我的类已生成,看起来不错,但没有构造函数。如何定义我的映射器,以便获得可以在实现中使用的构造函数?

最诚挚的问候,瑞典王子

最佳答案

MapStruct 不支持调用抽象类的构造函数。您必须有一个默认的空构造函数。

为了注入(inject)Dependency,您可以在字段上使用@Autowired或使用@Autowired添加setter

关于java - Mapstruct 生成用于依赖注入(inject)的构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66537340/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com