- Groovy is its own programming language, but runs on a Java Virtual Machine.
- Grails is a web application framework for Groovy (build websites with database support).
- Hibernate is a tool for mapping Java objects to database tables and back.
- JBoss is a Java application server where you can deploy web applications to.
- Jade, I believe, is a framework for building distributed "agents" in Java.
To answer why we have them: programming languages are not enough. If you were to tell me at an interview "I know Java" but didn't know about things like Hibernate, Spring, log4j, JAXB, etc. I would say you don't know Java. That's because no one builds applications with just the core language any more. They reuse frameworks and components so they can spend less time developing infrastructure and more time solving business problems. So, Hibernate, JBoss, and Jade are reusable frameworks or platforms for the Java language. Similarly Grails is a framework for the Groovy language, both of which support integration with Java.
It's a cool time to be a developer, but there is also so much to learn :-)