ModelMapper与STRICT匹配策略

问题描述 投票:2回答:2

我有以下实体类:

class Provider{
    private String providerId;
    private String identificationNumber;
    private Account account;

  // Setters, Getters and toString
}

class Account {
    private String name;
    private String lastname;
    private String email;

   // Setters, Getters and toString
}

DTO:

class ProviderDTO{
    private String providerId;
    private String identificationNumber;
    private String accountName;
    private String accountLastname;

   //Setters, Getters and toString
 }

如果我尝试使用(MatchingStrategies.STRICT)将我的DTO映射到Provider实体:

Provider provider = modelMapper.map(providerDTO,Provider.class);

provider.getAccount().getName()为null,provider.getAccount().getName()为null

但如果我使用(MatchingStrategies.STANDARD):完美的工作....

provider.getAccount().getName()不为null,provider.getAccount().getName()不为null

我的问题是:如何命名我的DTO的属性,以便modelmapper在STRICT模式下工作?

我想收到关于严格模式如何工作的解释,因为我没有找到示例,即使在官方模型映射器网站上也是如此。非常感谢!

java spring modelmapper
2个回答
1
投票

STRICT匹配策略不支持这种映射(分层 - >扁平或扁平 - >分层)。

请参考这里的文档:matching strategy和STRICT匹配策略的单元测试:StrictMatchingStrategyTest


0
投票

我创建了一个modelmapper策略的例子并上传到github上。

https://github.com/ishwarlal/ModelMapperExamples

它可以帮助您弄清楚它是如何工作的。

© www.soinside.com 2019 - 2024. All rights reserved.