The h4n doesn't allow you to adjust the preamp level, only the power amp (mic level), and the provided preamp has a really high noise floor. Aside from that, it takes forever to start up, has awful battery life, and a horrid button layout. I mean, the levels adjustment is in the form of buttons for christ sake...they should be knobs, like any decent audio device.
I think what happens is people buy H4Ns based purely on internet recommendations without trying anything else. They get decent results, and rave about the product, which means nothing considering most people who use them haven't ever used anything else, so how can they know whether or not it's good?
Anyway, the benefit of an external audio recorder is a dedicated sound device. a $4,000 microphone sent through a 7D will still sound like shit; no way around it. This is because a signal is only as good as its weakest link, and in this case, DSLR preamps make it unusable.
While most people don't prefer to do it this way, I go around with nothing but a recorder and microphone and get audio bites of random things. Over time I have built up a library of random sounds, which I superimpose over footage (foley). I like to take laps on the mountain and do nothing but record the sound of skiers taking off jumps, grinding rails, wind, explosives, etc. Then in post I have complete control over the sound of my video.
As a rule of thumb, on-camera audio can only be so good, which isn't very good. Ask any sound engineer about on-camera mic's and they will facepalm.