ResultQuery 作为 Iterable
适用于 ✅ 开源版 ✅ 专业版 ✅ 企业版
org.jooq.ResultQuery
类型扩展了 java.lang.Iterable
,因此继承了 JDK 的 Iterable.forEach()
方法,并且可以作为 foreach
循环的来源
// External iteration, fetching records eagerly for (var r : create.select(BOOK.TITLE).from(BOOK)) System.out.println(r.get(BOOK.TITLE)); // Internal iteration, fetching records lazily create.select(BOOK.TITLE).from(BOOK).forEach(r -> { System.out.println(r.get(BOOK.TITLE)); });
请注意,与使用org.jooq.Cursor
API 进行延迟获取不同,外部迭代样式将急切地获取整个中间org.jooq.Result
到内存中,因为 jOOQ 无法控制java.util.Iterator
的生命周期,并且 JDK 不知道java.lang.AutoCloseable
迭代器。
反馈
您对此页面有任何反馈吗? 我们很乐意听取您的意见!