Java DAO 实现 setObjects

Java DAO implementation setObjects

有这样的问题。

我有一些实体 类 AppartmentLandlord 等。现在我正在创建 ApartmentDaoImpl,这是 Apartment 的 DAO 实现。原始类型的一切都很清楚,我可以得到 landlordId.

问题是——他的id如何设置Landlord字段?

这不起作用,因为 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());

首先,你要给Landlord Object贴花并设置它的属性,例如:

Landlord landlord = new Landlord();
landlord.setName("foo");
landlord.setEmail("foo@bar");
etc.

或者,如果记录已经存在,您可以从数据库中获取它:

Landlord landlord = dataAccess.getLandlordByName("hereGoesTheName");

当然,在后一种情况下,您需要实现一个适当的DataAccess class 并通过dataAccess 对象访问它的方法。

只有这样您才能将其分配给公寓实体:

apartment.setLandlord(landlord);

除此之外,在我看来您并没有真正掌握 OOP 的基本概念。这没什么问题,但是您要解决的问题是一个非常高级的问题。