Spring MVC
1. MVC supports
· Form Backup : data stored in Beans, then validate, we use spring-tag library
· Controllers
a. MultiAction --> save, update, find for all we can use single controller
b. MultiForm --> Multiple form data from diff pages we can handle single controller
· Validation Support
· I18N suport
· Inrerceptors
· view resolvers
· Exception Handling
2. Spring MVC Container
· MVC Container name is WebApplicationContextContainer(IoC)
· JSP model architecture is recommended to design Spring-MVC
· we have some helping controllers in the case of MultiForm/ Multiaction
3. Spring Front Controller
Frontcontroller --> used for common required operations []
i. JSP MODEL -1 : JSP as a Front Controller
ii. JPS MODE; -2 : Servlet as a Front Controller(Struts 1| Spring MVC| JSF)
iii. JSP MODEL-3 : Filters as Front controller(Struts 2)
iv. JSP MODEL-4 Tag Support as Front controller
Examples of FrontControllers in different Frameworks
1. Struts1 Ã ActionServlet
2. Struts2 Ã FilterDispatcher / StructsPrepairandExecute
3. JSF Ã FacesServlet
4. Spring à DispatcherServlet
4. In Spring.xml
· If our jsp has Registration, getData, Login as url patterns , we configure that in a web.xml
· name : [ ] action="/hello.htm"
· Configure Frontcontroller à DispatcherServlet in web.xml
· for doing specific logic we have to configure controller
· Controller(I) --> public modelAndView handleRequest(req, res) returns modelAndView ("sucesss", map)
· We write spring-servlet.xml file, we need to write map data. It’s like structs.xml
· to solve success pages we have to use "InternalResorceViewResolver", had 2 methods prefix(location) and suffix(.extension) methods
5. Controller’s in Spring MVC
Core controllers
1. Controller
2. Abstarct Controller
Form Controller
1. ParametarizableViewController
2. UrlFileNameViewController
HandlerController
1. BeanNameUrlHandlerMapping (def.)
2. ControllerClassNameHandlerMapping -->by controller name as url
3. SimpleUrlHandlerMapping --> Map pattrens to ID's
4. CommonsPathHandlerMapping
Command controller
1. BaseCommandController
2. AbstarctFormController
3. AbsarectWizardController
4. SimplaFormController
5. AbstarctCommandController
ThrowAway controller
1. ThrowAway controller
Multi Action Controller
1. Multi Action Controller
View Resolvers
1. InternalViewResolver
2. tilesViewResolver
3. ...........So many