so finden Sie eine Zeichenfolge im groovy-Liste

Frage von einem groovy-Neuling:

sql eingeleitet wird wie folgt

 final Binding binding = new Binding();  
 binding.setProperty("sql", sql);
final groovy.sql.Sql sql = Sql.newInstance(dbConfig.getUrl(), dbConfig.getUserName(), dbConfig.getPasswd(),"oracle.jdbc.OracleDriver");

Ich bin beim ausführen einer Abfrage in groovy wie in diesem

def listOfRows = sql.rows (select column1 from table1);

listOfRows, wenn Sie gedruckt zeigt Inhalte wie [[column1_name:value1], [column1_name:value2], [column1_name:value3]]

Möchte ich überprüfen, ob value2 (eine Zeichenfolge) gibt es in der zurückgegebenen Liste der Werte aus der obigen Abfrage.

Ich habe versucht zu tun listOfRows.contains('value2') und listOfRows.find('value2'),
es beschwert sich, dass die Methode nicht existiert für Listen..

was ist der beste Weg, dies zu tun ?

BEARBEITET: ich habe korrigiert die Liste der Werte. Was zurückgegeben wird, ist List<GroovyResultSet>
und außerdem habe ich die definition von sql.

  • Was ist Ihre definition von sql?
  • Was bedeutet listOfRows eigentlich enthalten? Es kann nicht sein [column1_name:value1, column1_name:value2, column1_name:value3]
  • Ich schließe mich @tim_yates, [column1_name:value1, column1_name:value2, column1_name:value3] ist noch nicht einmal eine Karte, da keys sind die gleichen. Sind Sie immer eine Liste der Karten mit dem Schlüssel als column1, column2, ....?
  • Ich stehe korrigiert, was zurückgegeben wird list<GroovyResultSet> Korrektur - listOfRows, wenn Sie gedruckt zeigt Inhalte wie [[column1_name:Wert1], [column1_name:Wert2], [column1_name:value3]]
InformationsquelleAutor robin bajaj | 2013-12-30
Schreibe einen Kommentar