My experience has been that if you're already using Hibernate, writing your batches via HQL can be very effective. But there's lots of difficult issues, such as the very strict typing of inputs, that can make it painful to debug.
But as Gregg points out, ultimately it gets translated into SQL regardless.
There will always be people who are ahead of the curve, and people who are behind the curve. But knowledge moves the curve. --Bill James