2017-01-04 7 views
0

Mapstructは、コンパイル段階で私に次のエラーがスローされますいくつかの属性をマップしませんMapStructは他のすべてのメソッドのコードを生成します。MapStructは

ConfigオブジェクトにはConfigsDTOよりも多くのフィールドがあると考えられます。生成されたメソッドの実装において

@Mapper 
public interface ConfigsMapper { 

    ConfigsMapper INSTANCE = Mappers.getMapper(ConfigsMapper.class); 

    ConfigsDTO ConfigsToConfigsDTO(Configs configs); 

    List<ConfigsDTO> toConfigsDTOs(List<Configs> configs); 

    @InheritInverseConfiguration 
    Configs toConfigs(ConfigsDTO configsDTO); 
} 
+0

なぜdownvote?詳細が必要ですか? –

答えて

2

ソース・タイプ(例えば、Configsに)からのすべての読み取り可能なプロパティは、ターゲット・タイプ(例えばConfigsDTO)に対応するプロパティにコピーされます。プロパティの名前がターゲットエンティティに異なる場合、その名前は@Mappingアノテーションで指定できます。

アノテーション@マッピングは、ソースのどの属性をターゲット内の特定の属性に転送するかを定義します。アノテーションは@InheritInverseConfigurationの逆マッピングを行うことを定義します。例えば

@Mapper 
public interface ConfigsMapper { 
    ConfigsMapper INSTANCE = Mappers.getMapper(ConfigsMapper.class); 

    @Mappings({ 
     @Mapping(source = "configs1", target = "configsDTO1"), 
     @Mapping(source = "configs2", target = "configsDTO2"), 
     @Mapping(target = "somethingElse", constant="somethingElseOnDTO") 
    }) 
    ConfigsDTO ConfigsToConfigsDTO(Configs configs); 

    @InheritInverseConfiguration 
    Configs toConfigs(ConfigsDTO configsDTO); 
} 
関連する問題