Помогите разобраться в этом сложном для меня моменте. У меня есть два класса сущностей User и Hotel, у них поля long id и геттеры. Пара классов UserDAO, HotelDAO которые наследуются от общего GeneralDAO<T> в нём метод public T save(T t). Логика у метода следующая, сохранять объект, если у него id равен 0, то есть if(t.getId() == 0) то сохраняю объект в базу данных. Объясните пожалуйста, как я могу получить доступ к полям классов User и Hotel,чтобы использовать их в GeneralDAO<T> ?
Сделать общий класс MyEntity с полем long id + геттеры/сеттеры.
Унаследовать свои классы User и Hotel от класса MyEntity.
GeneralDAO<T> перестроить на GeneralDAO<T extends MyEntity>
Приблизительная структура классов:
class MyEntity implements Serializable {
private long id;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
}
class GeneralDAO<T extends MyEntity> {
public T save(T t) {
if (t.getId() == 0) {
//TODO: som
}
return t;
}
}
class User extends MyEntity{
}
class Home extends MyEntity{
}
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости