我有一个简单的问题,我在网上找不到答案。以下哪个领域模型更有效:
class Text {
User author
static constraints = {}
}
class Text {
String author
static constraints = {}
}
用户对象将用户名作为字符串包含在其中。但哪个更有效率?保存字符串并搜索对象还是保存对象?
我有一个简单的问题,我在网上找不到答案。以下哪个领域模型更有效:
class Text {
User author
static constraints = {}
}
class Text {
String author
static constraints = {}
}
用户对象将用户名作为字符串包含在其中。但哪个更有效率?保存字符串并搜索对象还是保存对象?
当您使用标准查询时,第一个选项会给出更准确的结果,而且它也会很有效,JVM 比较对象哈希码而不是在查询时比较字符串更容易
好吧,如果您使用一个对象,它往往会让您的生活更轻松,尤其是在您的应用程序增长的情况下。但是,如果这个应用程序没有机会增长,那么就没有理由只使用其中包含字符串作者的对象(这只是另一个没有任何目的的间接级别)。为了性能,使用 User 更好,因为它在一对一关联中默认使用延迟加载,并且在加载 Text 对象时不会加载 User 对象,因此只有在请求时才拥有 User 。此外,它是更好的 OOP。如果您谈论的是在这些域中查询作者的性能,那是一回事。