当前位置: 首页 > 知识库问答 >
问题:

Application.Properties中的Mapstruct值

端木渝
2023-03-14

我在找像这样的东西

    @Mapping(target="version", expression="${application.version}")
    StateDto stateToStateDto(State state);

其中application.version=v1来自application.properties文件。

共有1个答案

法和硕
2023-03-14

考虑一个“UTIL服务”,如下所示:

@Service
public class PropertyService {

  @org.springframework.beans.factory.annotation.Value("${application.version}"
  private String appVersion;

  // accessors, more properties/stuff..
}

然后可以定义映射,如下所示:

@Mapper(// ..., ...
   componentModel = "spring")
public abstract class StateMapper {

  @Autowired
  protected PropertyService myService;

  @org.mapstruct.Mapping(target="version", expression="java(myService.getAppVersion())")
  public abstract StateDto stateToStateDto(State state);
  // ...
}

另见:

    null
 类似资料: