我正在尝试使用以下代码创建Map
并将其强制转换为GroovyRowResult
:
def a = [
x: 1,
y: 2,
my_column: "somevalue"
] as groovy.sql.GroovyRowResult
if(a.opportunity_id) {
println("VALUE " + a.my_column)
}
println("GOOD")
并查看if condition
是否正常工作。我需要这样做,因为我想在网上游乐场验证。
答案 0 :(得分:1)
访问GroovyRowResult
上的遗失属性时,您会收到如下错误:
Caught: groovy.lang.MissingPropertyException: No such property: opportunity_id for class: groovy.sql.GroovyRowResult
groovy.lang.MissingPropertyException: No such property: opportunity_id for class: groovy.sql.GroovyRowResult
因此,仅仅从地图中实现新的GRR并不会使GRR表现得像地图(反之亦然)。
您必须指定以后使用的所有内容。 E.g。
def a = [
opportunity_id: 666, // XXX
my_column: "somevalue"
] as groovy.sql.GroovyRowResult
if (a.opportunity_id) {
println("VALUE " + a.my_column)
}