ModelMapper со стратегией соответствия STRICT
У меня есть следующие классы сущностей:
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
}
Если я попытаюсь сопоставить мой DTO с объектом Provider, используя (MatchingStrategies.STRICT
):
Provider provider = modelMapper.map(providerDTO,Provider.class);
provider.getAccount().getName()
является нулевым и provider.getAccount().getName()
является нулевым
Но если я использую (MatchingStrategies.STANDARD
): Отлично работает....
provider.getAccount().getName()
не является нулевым и provider.getAccount().getName()
не нуль
Мой вопрос: как мне назвать свойства моего DTO, чтобы модель-картограф работал в режиме STRICT?
Я хотел бы получить объяснение того, как работает строгий режим, потому что я не нашел примеров даже на официальном сайте modelmapper. Большое спасибо!
1 ответ
Стратегия сопоставления STRICT не поддерживает этот тип отображения (иерархическое -> плоское или плоское -> иерархическое).
Пожалуйста, ознакомьтесь с документами здесь: стратегия соответствия и модульный тест для стратегии соответствия STRICT: StrictMatchingStrategyTest
Я создал пример стратегий ModelMaper и загрузил на GitHub.
https://github.com/ishwarlal/ModelMapperExamples
Это может помочь вам понять, как это работает.