接口
/**
* @IterableMapping(qualifiedByName = "test") : 指定調用@Named("test")標記的方法作為集合內元素轉換方法
*/
@Named("test2")
@IterableMapping(qualifiedByName = "test")
List<ClusterInfoDTO> test2(List<ClusterInfo> clusterInfoSet);
/**
* 該方法只想復制id屬性
* @BeanMapping(ignoreByDefault = true) : 不自動映射字段,所有需要映射的字段均需要通過@Mapping來指定
*/
@Named("test")
@BeanMapping(ignoreByDefault = true)
@Mapping(target = "id", source = "id")
ClusterInfoDTO test1(ClusterInfo clusterInfoSet);
自動生成的實現
@Override
public List<ClusterInfoDTO> test2(List<ClusterInfo> clusterInfoSet) {
if ( clusterInfoSet == null ) {
return null;
}
List<ClusterInfoDTO> list = new ArrayList<ClusterInfoDTO>( clusterInfoSet.size() );
for ( ClusterInfo clusterInfo : clusterInfoSet ) {
list.add( test1( clusterInfo ) );
}
return list;
}
@Override
public ClusterInfoDTO test1(ClusterInfo clusterInfoSet) {
if ( clusterInfoSet == null ) {
return null;
}
ClusterInfoDTO clusterInfoDTO = new ClusterInfoDTO();
clusterInfoDTO.setId( clusterInfoSet.getId() );
return clusterInfoDTO;
}