Grails支持基本集合类型的映射,例如:
static hasMany = [nicknames: String]
那么,做上述与仅将类型String
的数组(或列表)添加到域类之间的区别究竟是什么 - 即
List<String> nicknames
答案 0 :(得分:4)
区别在于:
List<String> nicknames
Grails不知道你真的想要映射(通过Hibernate)。 Grails使用static hasMany
告诉Hibernate如何在不需要Hibernate映射文件的情况下工作。
从技术上讲,您无需定义List<String>
。您只需要hasMany
。这将默认为Set<String>
。如果您需要索引列表,那么将List<String>
与hasMany
一起保留即可。