it saves a lot of reinventing the wheel
Now read up on all the dozen of annotations. But yeah, we did not want to "re-invent the wheel".
await using cn = await pool.connect();
const records = await cn.query<MyType>`
SELECT ...
FROM ...
WHERE ...
`;
for await (const record of records) {
...
}
Oh, spring is so much better... var records = jdbcClient
.sql("select * from posts")
.query(Post.class)
.toList();
records.forEach(p -> ...);Thankfully the company that wrote the article has a linter/warning product to help avoid those pitfalls.