Grails hasOne vs. belongsTo

Sve*_*uer 7 grails grails-orm

要在Grails中创建一对一的关系,我可以这样做:

class Person {
    static hasOne = [address: Address]
}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,地址表具有其人员的密钥.我也可以这样做:

class Address {
    static belongsTo = [person: Person]
} 
Run Code Online (Sandbox Code Playgroud)

这给出了相同的结果.

我的两个样本使用hasOne和有belongsTo什么区别?

doe*_*eri 7

hasOne 表示存在双向一对一关系,其中子表具有父项的外键,如示例所示.

belongsTo用于通过指示类属于指定的类来控制级联.在您的示例中,删除给定Person会将删除级联到任何关联的Addresses.