Как удалить дубликаты полей в сущностях и классах Dto? - PullRequest
0 голосов
/ 30 мая 2019

Предположим, у меня есть следующая структура классов:

@MappedSuperclass
public abstract class Identifiable<T> {

   @Id 
   @GeneratedValue
   private T id;

   //getters & setters
}

@Entity
@Table(name="purse")
public class Purse extends Identifiable<Long> {

    private Integer ruAmount;
    private Integer usdAmount;
    private Integer eurAmount;

    ... // getters and setters with hibernate @Column annotations
}

@Entity
@Table(name="credit_card")
public class CreditCard extends Identifiable<Long> {

    private Integer ruAmount;
    private Integer usdAmount;
    private Integer eurAmount;

    ... // getters and setters with hibernate @Column annotations
}

public class CreditCardDto {

    private Integer ruAmount;
    private Integer usdAmount;
    private Integer eurAmount;

    // getters and setters ...
}

Я думаю, что это не очень хорошо продуманная структура классов, потому что я дублирую одинаковые валютные поля в каждом классе.Более того, если мне нужно добавить новое поле валюты, мне придется добавить его к каждому классу.Можете ли вы предложить мне альтернативную структуру классов?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...