有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java转换列表mapsturct中的单个对象

如何为下面的场景进行响应映射MapStruct

我的模型如下

@Getter
@Setter
public class TaskList {

   private Long taskStatus;
}

我的回答如下

@Getter
@Setter
public class TaskResponse {

 private Long taskStatus;
}

我将回复pojo包装到下面的回复列表中

public class AllTaskListResponse {
  
   private List<TaskResponse> taskResponseList = new ArrayList<>();
}

我的任务如下

public enum TaskStatusEnum {
  
  Sth(1);
  Sth(2);

private final long value;

TaskStatusEnum(long value) {

  this.value = value;
}

 public static TaskStatusEnum get(long value) {

 for (TaskStatusEnum status : TaskStatusEnum.values()) {
     
   if(status.value == value) {

    return status;
  
   }
 }

  return null;
 }
}

下面是我的任务列表映射器

 @Named("taskStatusToString")
public static TaskStatusEnum taskStatusToString(long taskStatus) {
   
   return TasStatusEnum.get(taskStatus);
}

 @Mapping(source = "taskStatus", target = "taskStatus", qualifiedByName = "taskStatusToString")
 public abstract List<TaskResponse> toAllTaskListResponse(List<TaskList> taskList);

所以当我尝试运行时,我收到了“未映射的目标属性结果”消息

谢谢!


共 (0) 个答案