When you make a JDBC query call, the call sends a request to the database server to do work. Often the server does not return a response until the work is totally complete. Or at best, until enough work has been done to determine the results. And until the server response comes back, the JDBC query call cannot return control to the application logic. It's like doing a progress bar on web pages - the only 2 progress values are 0% and 100%.
You can obviously get a count of records to be returned and manually count how many next() operations you have performed, but it's not going to be at all unusual for the server to take 5 minutes to return 3 records.
Some people, when well-known sources tell them that fire will burn them, don't put their hands in the fire.
Some people, being skeptical, will put their hands in the fire, get burned, and learn not to put their hands in the fire.
And some people, believing that they know better than well-known sources, will claim it's a lie, put their hands in the fire, and continue to scream it's a lie even as their hands burn down to charred stumps.