Imagine a bacon-wrapped Ferrari. Still not better than our free technical reports.
See all our reports

The Ultimate Java Web Frameworks Comparison: Spring MVC, Grails, Vaadin, GWT, Wicket, Play, Struts and JSF

Introduction: Let get curious…

Web Frameworks are all very different and have been typically created for different reasons and to achieve different goals. Which Java Web Framework will you use in your next project and why would you chose one over the other? There are many features which may sway your decision and of course it will depend on the type of app you’re building.

Why do we need Web Frameworks?

Well, coding good-looking web applications in Java isn’t super easy. In fact, let’s just say it sucks. It can be hard to do and mostly doesn’t give us the rich front-end we strive to deliver to happy users. This is really the catalyst which has caused Web Frameworks to be created. Both, functional and non-functional web app requirements have led to the need for various web frameworks to be created, but this brings us to the opposite problem…there are so many choices out there to use, which web framework should you pick for your next web app?

We thought it made sense to follow up on the Java Web Frameworks section of our popular Developer Productivity Report and see what we had in there back in 2012. According to over 1800 developer responses, here’s what we found:

Web-frameworks-developer-productivity-report

More than just looking at market share and usage in place, we wanted to extend this report on Java Web Frameworks to look deeper at these eight libraries, and find out about what is really important to developers, in addition to looking into how different frameworks make sense for different use cases.

This report is the first of two and will focus on a feature comparison across the following categories:

  1. Rapid application prototyping
  2. Framework Complexity
  3. Ease of Use
  4. Documentation & Community
  5. Framework Ecosystem
  6. Throughput/Scalability
  7. Code Maintenance/Updates
  8. UX, Look and feel

We’re going to compare and contrast each Web Framework in this report against each category above scoring and placing each of them based on our findings. The Java Web Frameworks (and versions) we will be discussing in this report are:

  • Spring MVC 3.2.3
  • Grails 2.2.2
  • Vaadin v7.1.1
  • GWT 2.5.0
  • Wicket 6.8
  • Play 2.1.2
  • Struts 2.3.15.1
  • JSF 2.2

Wait–there is a Part II coming?

In order to avoid a 9000-page report, we wanted to separate it into two parts. In this part, we look at each framework objectively and compare them. In the second report we will take a look at different application types and styles (i.e. use cases), matching the most appropriate Java Web Frameworks to each, from the information and scores from this report. Each application type will care about the categories mentioned in this report to varying extents, which will aid us in weighting each of the categories for the application types. So save some popcorn, keep an eye out for the trailers and make sure you come back for the sequel to this blockbuster report.

What if you no longer had to redeploy your Java code to see changes? The choice is yours. In just a few clicks you can Say Goodbye to Java Redeploys forever.

Continue this on the couch and download the PDF version

  • Jeff

    Have a look on https://www.cuba-platform.com/en/. It’s a framework of frameworks, so you can escape choosing low level ones.

  • vladimir valev

    Very well done! Anyway what about Servlets3.x + Freemarker? If you like to be in 100% control and to use fairly simple Controller for all? Vladimir Valev

  • Shweta Parmar

    Thanks for this amazing and great post on shareit download man! https://shareitdownloadapp.com