Groovy принудительная карта GroovyRowResult - PullRequest
0 голосов
/ 07 июня 2018

Я пытаюсь создать 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 правильно.Мне нужно это сделать, потому что я хочу проверить это на онлайн-площадке.

1 Ответ

0 голосов
/ 08 июня 2018

При доступе к отсутствующему свойству в 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 вести себя как карта (этонаоборот).

Вы должны указать все вещи, используемые позже.Например,

def a = [
    opportunity_id: 666, // XXX
    my_column: "somevalue"
] as groovy.sql.GroovyRowResult

if (a.opportunity_id) {
    println("VALUE " + a.my_column)
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...