关于DTO(数据传输对象)和带有最终修饰符的Java实现的问题。
实际上。必须在一个位置(构造函数)中创建所有DTO,而DTO内部没有任何逻辑。如果有多个来源-则有聚合服务,该服务可以收集所有数据并将其放入新的DTO中。同样,具有最终字段的DTO将更加可预测。是不是?
示例:
@Getter
class FooDto {
private final ... fooField;
}
问题是:我应该在DTO的字段上使用final修饰符吗?我找不到确切的DTO信息。但我认为-最终点在这里很重要。
不可变对象设计模式”作为一种好的做法。
如果要以某种方式在返回对象之前需要进行第二次检查,则可以删除最终修饰符,并使用库进行映射,并避免使用额外的代码。您可以使用Mapstruct