There are OR-Mappers and there are OR-Mappers. Yes, full blown OR-Mappers with their own SQL dialect are a pain in the ass, but at the other end of the spectrum, it’s an even nastier pain in the ass to have to stuff those resultsets into HashMaps or instances of your own classes manually.
I usually work with utility methods that for generate the often used queries, like a simple SELECT statement (listing the columns in a table) and methods that pump the resultset into instances of classes that have the same structure as the table. It has support for foreign keys, to make it a bit more convenient. If I weren’t allowed to use such a minimal OR-Mapper, I’d probably quit that job. Life is too short to write SQL in Java. :-X