Heyja,
a frequently used answer to the question \"What is so special about Java?\" is \"The tools and frameworks\". I guess this is correct. I am stunned when i see
+1 for Spring.
Struts 1.x is not the latest hype, but is probably worth knowing, as gazillions of lines of code have been written with it. If you're in the consulting business, you'll run into it one day or another.
Also, if you're improving your Java skills, I definitely recommend the book "Effective Java, 2nd edition" by Joshua Bloch.
Eclipse is a must. Not only is it a great IDE, but it integrates quite well with other tools (SVN, Ant...).
Maven is worth learning, but I would suggest Spring. Spring will make your coding life much simpler.
JUnit is the most important Java framework to learn. Not only is it a valuable tool to use for unit testing, it teaches you what a framework should be: small and focused on doing one thing well.
The Apache Commons project provides a lot of useful tools that save reinventing the wheel.
If we're talking marketability, then you ideally want to be the kind of developer who can be productive at any layer of a production app. So learn something about each layer.
Also, don't neglect the non-Java technologies you need to know:
If I had to choose one thing out of this list, I'd go for Spring. If choosing two, I'd take Spring and JQuery.