2 回答
TA贡献1906条经验 获得超10个赞
强烈地说,它是基于意见并取决于项目。
但让我们记住单一责任原则。DTO 负责层之间的数据保存,而不是转换。我更喜欢有一个简单的转换器,其方法如下:
public class GenerateDaByContextDtoConverter { public GenerateContentDto convert(GenerateDaByContextDto source) {...} }
出于同样的原因,通常 DTO 是不可变的。您可以使用 lombok 的@Value
注释。
如果符合业务逻辑,另一种解决方案可能是组合:
class GenerateDaByContextDto { private GenerateContentDto generateContentDto; ... }
TA贡献1847条经验 获得超11个赞
您可以将@Getter, @Builder, @AllArgsConstructor,替换@NoArgsConstructor为@Data
这是更好的方法
@Data
public class GenerateDaByContextDto {
private String cNumber;
private BusinessContext businessContext;
private String zCode;
private String yCode;
private String xCode;
private String event;
/*
public GenerateContentDto toGenerateContentDto() {
return GenerateContentDto.builder()
.businessContext(businessContext)
.event(event)
.build();
}
*/
}
添加回答
举报