Sam Mercs wrote:It depends on which path you like to follow.
Struts is popular framework that fit nicely once you've got the JSP/Servlets done. Struts 2.0 the latest, but struts 1 is more in widespread use (mostly maintenance stuff)
Spring is a pretty comprehensive and popular framework these days, personally I'd say its a bit difficult to pick up if you not actually practically using it! But if were to back a technology that will have good demand in the Java space - it would be spring. I can see it growing!
Flex, GWT & there loads of more frameworks that have a nice niche market!
If you looking for advice the best would be to look around and see what's most needed around you so that you could get more opportunity to work on some of it.
Are you working in some area of Java or are you studying? A bit of back ground on where you are and what you like to do, might help folks give you some specific advice.
Bear Bibeault wrote:I'd skip Struts -- both versions -- unless you have a specific need to work on legacy applications. Their use in the industry is in a death spiral.
Spring MVC seems to be the framework du jour, as well as some up and coming next gen frameworks like Grails or Play.
Hibernate/JPA is a must.
Bear Bibeault wrote:Normally I'd say that learning Spring MVC and Hibernate/JPA are completely separate as the former resides in the Controller/View layers, and the latter in the Model.
But, Spring MVC is just a part of the Spring ecosystem (which is huge!). Spring has some integration with Hibernate/JPA so which you learn and in what order depends upon whether you want to get to JPA via Spring or independently.
Personally, I'd recommend learning Hibernate/JPA independently of Spring as that won't tie you to the Spring ecosystem if you choose not to use it. You can always learn the Spring/JPA templates later.