From a06345e290e83c6d91e15f849db3311509320994 Mon Sep 17 00:00:00 2001
From: adhiggs <38925938+adhiggs@users.noreply.github.com>
Date: Fri, 31 Jan 2025 18:27:05 -0800
Subject: [PATCH] Update SpannerSample.java

Encapsulates both statements in a try-with-resources statement
---
 .../com/example/spanner/SpannerSample.java    | 27 ++++++++++---------
 1 file changed, 14 insertions(+), 13 deletions(-)

diff --git a/samples/snippets/src/main/java/com/example/spanner/SpannerSample.java b/samples/snippets/src/main/java/com/example/spanner/SpannerSample.java
index d406225c28..610fb02593 100644
--- a/samples/snippets/src/main/java/com/example/spanner/SpannerSample.java
+++ b/samples/snippets/src/main/java/com/example/spanner/SpannerSample.java
@@ -679,26 +679,27 @@ static void readOnlyTransaction(DatabaseClient dbClient) {
     // ReadOnlyTransaction must be closed by calling close() on it to release resources held by it.
     // We use a try-with-resource block to automatically do so.
     try (ReadOnlyTransaction transaction = dbClient.readOnlyTransaction()) {
-      ResultSet queryResultSet =
+      try (ResultSet queryResultSet =
           transaction.executeQuery(
-              Statement.of("SELECT SingerId, AlbumId, AlbumTitle FROM Albums"));
+              Statement.of("SELECT SingerId, AlbumId, AlbumTitle FROM Albums")) {
       while (queryResultSet.next()) {
         System.out.printf(
             "%d %d %s\n",
             queryResultSet.getLong(0), queryResultSet.getLong(1), queryResultSet.getString(2));
       }
-      try (ResultSet readResultSet =
-          transaction.read(
-              "Albums", KeySet.all(), Arrays.asList("SingerId", "AlbumId", "AlbumTitle"))) {
-        while (readResultSet.next()) {
-          System.out.printf(
-              "%d %d %s\n",
-              readResultSet.getLong(0), readResultSet.getLong(1), readResultSet.getString(2));
-        }
+    } // queryResultSet.close() is automatically called here
+    try (ResultSet readResultSet =
+        transaction.read(
+            "Albums", KeySet.all(), Arrays.asList("SingerId", "AlbumId", "AlbumTitle"))) {
+      while (readResultSet.next()) {
+        System.out.printf(
+            "%d %d %s\n",
+            readResultSet.getLong(0), readResultSet.getLong(1), readResultSet.getString(2));
       }
-    }
-  }
-  // [END spanner_read_only_transaction]
+    } // readResultSet.close() is automatically called here
+  } // transaction.close() is automatically called here
+}
+// [END spanner_read_only_transaction]
 
   // [START spanner_read_stale_data]
   static void readStaleData(DatabaseClient dbClient) {