I\'ve noticed that a lot of projects have the following structure:
Others have already told you it's a Maven convention, I'm going to answer your question instead:
Absolutely none. Certainly it's beneficial to separate pieces of code to separate root folders, but usually you could achieve the same with
instead. In fact here's a big thing Maven does that's actually hugely wrong: It wants to add binary content to source code repository which is meant for textual content only! All binary content should be managed outside the source code repository, that includes images in web applications and whatnot.
But OK, lets assume that you've decided to live in the somewhat smelly Maven ecosystem; then you should of course follow the Maven conventions as strictly as possible.