Building a Web Application with Spring MVC
Spring MVC is the most popular web framework used to develop Java web applications. The beauty of Spring MVC lies in its clean, loosely coupled architecture. With a clean definition of roles for controllers, handler mappings, view resolvers, and Plain Old Java Object (POJO) command beans, Spring MVC makes use of all the core Spring features--like dependency injection and autowiring--to make it simple to create web applications. With its support for multiple view technologies, it is extensible too.
While Spring MVC can be used to create REST services, we discuss that in Chapter 5, Building Microservices with Spring Boot.
In this chapter, we will focus on reviewing the basics of Spring MVC with simple examples.
In this chapter will cover the following topics:
- The Spring MVC architecture
- The roles played by DispatcherServlet, view resolvers, handler mappings and controllers
- Model attributes and session attributes
- Form binding and validation
- Integration with Bootstrap
- Basics of Spring Security
- Writing simple unit tests for controllers