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();
}
*/
}
添加回答
舉報
