Sobes.tech
Junior — Middle

Cum se poate lega un nou obiect de date (DTO), care nu poate fi modificat, de un DTO existent?

sobes.tech AI

Răspuns de la AI

Если новый DTO неизменяемый (immutable), а нужно связать его с существующим DTO, обычно применяют паттерн преобразования или адаптации. Это можно сделать через конструктор или статический метод, который принимает существующий DTO и создает новый объект на его основе.

Пример на Java:

public final class NewDTO {
    private final String field1;
    private final int field2;

    public NewDTO(OldDTO oldDto) {
        this.field1 = oldDto.getField1();
        this.field2 = oldDto.getField2();
    }

    // геттеры без сеттеров
}

Таким образом, вы создаете новый объект, который содержит данные из старого DTO, при этом гарантируя неизменяемость нового объекта. Также можно использовать библиотеки маппинга, например MapStruct, для автоматизации преобразования между DTO.