2 回答

TA貢獻1906條經(jīng)驗 獲得超10個贊
強烈地說,它是基于意見并取決于項目。
但讓我們記住單一責任原則。DTO 負責層之間的數(shù)據(jù)保存,而不是轉(zhuǎn)換。我更喜歡有一個簡單的轉(zhuǎn)換器,其方法如下:
public?class?GenerateDaByContextDtoConverter?{ ????public?GenerateContentDto?convert(GenerateDaByContextDto?source)?{...} }
出于同樣的原因,通常 DTO 是不可變的。您可以使用 lombok 的@Value
注釋。
如果符合業(yè)務邏輯,另一種解決方案可能是組合:
class?GenerateDaByContextDto?{ ????private?GenerateContentDto?generateContentDto; ????... }

TA貢獻1847條經(jīng)驗 獲得超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();
}
*/
}
添加回答
舉報