Скажите, у меня есть класс, Пользователь:
public class User {
private String name;
private Integer age;
private Double cash;
// Getters and setters...
}
Какая-то волшебная система выплевывает данные для всех пользователей, и моя система забирает их. Некоторые сотрудники должны сообщать об этих данных, но некоторые из них, как известно, неверны. Поскольку исходная система волшебная, никто не может связываться с пользовательскими данными в ней, поэтому им нужно использовать мою систему для обновления этих данных, чтобы они были правильными в отчете. Таким образом, я хочу создать класс, похожий на следующий:
public class UserUpdate {
private UserPropertyEnum property;
private Something newValue;
private Date dateAdded;
// Getters and setters...
}
Итак, проблема в том, что я не знаю тип поля, которое я изменяю. Я полагаю, я мог бы сделать newValue
типа Object, и привести его на основе значения свойства enum ...
В любом случае, есть хороший шаблон дизайна, который решает это? И если есть, как это реализовано на уровне данных (я использую реляционную базу данных)?
(Пожалуйста, воздержитесь от "вы неизменны, волшебная система глупа ... не храните данные, о которых известно, что они неверны", поскольку я знаю об этом и совершенно бессилен что-либо с этим делать.)
Спасибо!