gpt4 book ai didi

java - 我应该有一个对象作为属性或原始 id 吗?

转载 作者:行者123 更新时间:2023-12-02 05:21:11 24 4
gpt4 key购买 nike

这个问题可能是基于意见的,但我想知道我应该使用哪个原则。这是我的情况。

我有一个名为 TravelOffer 的类。这个类看起来像这样:

public class TravelOffer
{
private final long id;

private final StartZone startZone;
private final EndZone endZone;
private final List<Waypoint> waypoints;

private final Period startOff;

private final User travelCreator;
private final List<User> participantsList;

private final TravelExtras travelExtras;

private final CandidateApprovement candidateApprovement;

private int numberOfSeats;

private double pricePerPerson;

private Luggage luggage;

private boolean additionalLuggageTransport;

private String additionalDescription;
}

如您所见,有以下属性:

User tavelCreatorList<User> participantsList

我想知道的是应该像这样还是简单地将 User 对象替换为 String userId ,然后从单例类中获取将位于 Hashmap 中的 User 对象。

有什么想法吗?

最佳答案

我认为存储 ID 而不是引用是一个好主意。这会使代码变得更加复杂,因为每次您需要与 TravelOffer 关联的用户时,您都必须调用返回引用的 DAO。只要 Java 使用引用,您就不必担心内存。其他事项:参与者完全适合 TravelOffer,因此不应拆分。

比较一下:

travelOffer.getTravelCreator().getName()
userDao.getUser(travelOffer.getTravelCreatorId()).getName()

第一个对我来说看起来更好。

您的问题与对象关系映射有关吗?

关于java - 我应该有一个对象作为属性或原始 id 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26509455/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com