我正在使用Spring,并且从项目中的mapstruct库开始,所以我有了一个为@Mapper(componentModel =“ spring”)创建构造型注释的想法,例如@SpringMapper。但是它不会生成任何映射器。

这是不可能的,还是我做错了什么?

最佳答案

这是一个非常有趣的想法,但目前尚不支持。 MapStruct批注处理器仅查找@Mapper批注,即将为@SpringMapper的定义调用它,而不为任何带有@SpringMapper批注的bean调用。

话虽如此,MapStruct提供了自己的通过config classes重用配置的方式:

@MapperConfig(componentModel="spring")
public interface SpringMappers {}


将所有通用选项(例如组件模型)放入此类config类,然后从各个映射器引用它:

@Mapper(config=SpringMappers.class)
public interface MyMapper {
    //...
}

关于java - Mapper的Mapstruct原型(prototype),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42750363/

10-10 03:19