有这样的问题。
我有一些实体类Appartment
,Landlord
等等。现在我正在创建ApartmentDaoImpl
,即Apartment
的DAO实现。原始类型的一切都很清楚,我可以得到landlordId
。
问题是 - 如何按Landlord
设置id
字段?
这不起作用,因为getId()
方法是非静态的:
Apartment apartment = new Apartment(id);
apartment.setRooms(rooms);
apartment.setDescription(description);
apartment.setFree(free);
apartment.setPrice(price);
apartment.setLastUpdatedPrice(lastUpdatedPrice);
apartment.setLandlord(Landlord.getId());
答案 0 :(得分:1)
首先,您必须对Landlord对象进行十分转换并设置其属性,例如:
Landlord landlord = new Landlord();
landlord.setName("foo");
landlord.setEmail("foo@bar");
etc.
或者,如果记录已存在,您可以从DB获取它:
Landlord landlord = dataAccess.getLandlordByName("hereGoesTheName");
当然,在后一种情况下,您需要实现正确的DataAccess类并通过dataAccess
Object访问其方法。
只有这样您才能将其分配给公寓实体:
apartment.setLandlord(landlord);
除此之外,在我看来,你并没有真正掌握OOP的基本概念。没有什么不对的,但你正在尝试解决的问题是非常先进的。