Spring Web MVC framework provides Model-View-Controller (MVC) architecture

Dec 6, 2017 | Viewed : 26

The Spring Web MVC framework provides Model-View-Controller (MVC) architecture and ready components that can be used to develop flexible and loosely coupled web applications. The MVC pattern results in separating the different aspects of the application (input logic, business logic, and UI logic), while providing a loose coupling between these elements.

TheModelencapsulates the application data and in general they will consist of POJO.

TheViewis responsible for rendering the model data and in general it generates HTML output that the client's browser can interpret.

TheControlleris responsible for processing user requests and building an appropriate model and passes it to the view for rendering.

The DispatcherServlet

The Spring Web model-view-controller (MVC) framework is designed around aDispatcherServletthat handles all the HTTP requests and responses. The request processing workflow of the Spring Web MVCDispatcherServletis illustrated in the following diagram 

Spring DispatcherServlet

Following is the sequence of events corresponding to an incoming HTTP request toDispatcherServlet?

After receiving an HTTP request,DispatcherServletconsults theHandlerMappingto call the appropriateController.

TheControllertakes the request and calls the appropriate service methods based on used GET or POST method. The service method will set model data based on defined business logic and returns view name to theDispatcherServlet.

TheDispatcherServletwill take help fromViewResolverto pickup the defined view for the request.

Once view is finalized, TheDispatcherServletpasses the model data to the view which is finally rendered on the browser.

All the above-mentioned components, i.e. HandlerMapping, Controller, and ViewResolver are parts ofWebApplicationContextw which is an extension of the plainApplicationContextwith some extra features necessary for web applications.

Who we are and What we can do:

We have a powerful software development team and the following is about our programmers' technologies.

Programming Languages: Java, PHP, C++,

Background Development

1.Frame:SpringMVC + Hibernate + Spring Security or SpringMVC + ibatis + Spring Security

2.Cross-Platform Cross-Application Sharing Agreement: Soap, Restful

Server-Side Development:

Tomcat Cluster, Memcache, High-Performance Http Accelerator, Varnish LVS Load Banlancing Cluster

Instant Messaging: RabbitMQ Cluster, MQTT Cluster

App Development: Android App, IOS App

Primary Development Tools : Android Studio, Xcode

Primary Development Environment: Windows, Linux, Mac

Online Service