Yeah that can get ugly but it's still better than writing native queries because you know it's gonna automatically translate to any db specific sql flavour.
When they get a bit too long and ugly I either write default methods using specifications or I create a more concisely named default method that wraps the verbose monster.
you forgot about AbstractSimpleShitLotsGoodLibrariesButWeDecidedToMakeOurOwn and AbstractSimpleShitLotsGoodLibrariesButWeDecidedToMakeOurOwnAbstractFactory