The leiningen-war plugin is more low-level. You have more control over
how the war is generated, but you have to do more work. You have to
manually create a web.xml file, and create a namespace that can be
gen-classed into a HttpServlet.
The lein-ring plugin is considerably easier to use, but at the cost of
being less flexible. The web.xml and servlet are generated
automatically - all you have to do is add a reference to your handler
function to your project.clj.
If you don't need to manually generate a complex web.xml file, then
you're probably best sticking with the lein-ring plugin.
- James