When working with the different flows, we looked at some of the important features of the Spring MVC Framework. These include the following:
- It has loosely coupled architecture with well-defined, independent roles for each of the objects.
- They are highly flexible controller method definitions. Controller methods can have a varied range of parameters and return values. This gives the programmer the flexibility to choose the definition that meets their needs.
- It allows the reuse of domain objects as form-backing objects and reduces the need to have separate form objects.
- There are built-in tag libraries (Spring and spring-form) with localization support.
- The model uses a HashMap with key-value pairs. It allows integration with multiple View technologies.
- There is flexible binding. Type mismatches while binding can be handled as validation errors instead of runtime errors.
- There is a MockMVC Framework to unit test controllers.