Groovy には興味深い問題があります。誰かが私を助けてくれることを願っています。
基本的にGroovy Sqlを使用しています。異なるデータベースで複数のテーブルを選択する必要があります。私の 2 番目のクエリは、他のクエリに依存しています"select * from table1-in-db1 where key = ${result-of-other-query1}
。関数内でこれをハードコーディングすると、Groovy は正常に動作します。ただし、私の問題は、SQLがxmlファイルで定義されており、関数に文字列として渡された後、取得したことです。スコープ内で呼び出された変数があっても、インライン変数を相互運用することはもうありませんresult-of-other-query1
。
sudo コードの一部を次に示します。
doQuery(String squery, String tquery) {
//query db1.
//squery = "select key1 from table1"
db1.rows(squery).each {row->
//query db2.
//tquery ="select * where myKey ='${row.key1}'"
println tquery
tdb.rows(tquery).each { row1 ->
.... // get error here, coz groovy did not replace ${row.key1}
}
}
}
インライン変数が文字列として渡された場合でも、Groovy にインライン変数を置き換えるように指示する方法はありますか?
事前にご協力いただきありがとうございます