我正在使用mongo映射域。我在grails中有一个域,如下所示:
import org.truedash.annotations.EncodeClass
@EncodeClass
class UserValues implements Serializable {
User user
List<String> value
static constraints = {
}
boolean equals(o) {
if (this.is(o)) return true
if (getClass() != o.class) return false
UserValues that = (UserValues) o
if (user != that.user) return false
return true
}
int hashCode() {
return (user != null ? user.hashCode() : 0)
}
}
当我创建一个新对象为UserValues values = new UserValues(user: user, value: ["abc"])
时。这将创建一个对象,其值字段为[[“ abc”]],但预期值为[“ abc”]。我只能通过将value字段修改为List<String>
来解决此问题。我不知道这种奇怪的行为。请帮忙。