Spring mvc 特点
@ 功能组件划分细致
@ 灵活、强大
@ 设计思想优秀
MVC框架都做什么
@、以Controller为中心完成对系统流程的控制管理
@、从请求中收集数据
@、对传入参数进行验证
@、根据请求调用相应业务逻辑完成数据处理
@、将处理结果返回给视图
@、国际化支持
@、针对不同视图技术提供不同解析支持方案
@、针对JSP视图技术提供标签库
@、通过拦截器链实现面向方面编程完成系统级控制
@、对文件上传、下载等常用功能的封装
Spring MVC框架的核心构件
\
Dispatcher Servlet
Controller
Handler Mapping
ViewResolver & View
Interceptors
LocalResolver
Validate
Spring MVC 常用 Controller
@、直接实现Controller接口或AbstractController抽象类
@、ModelAndView对象
@、用于直接跳转页面的
ParameterizableViewController,UrlFilenameViewController
@、在同一控制器类中处理多个请求的MultiActionController.具体调用的方法通过MethodNameResolver决定
(InternalPathMethodResolver, ParameterMethodNameResolver, PropertiesMethodResolver)
方法签名:
public (ModelAndView | Map | String | void) actionName(HttpServletRequest request, HttpServletResponse response, [,HttpSession] [,AnyObject]);
@、能封装表单参数的CommondController、FormController
Spring MVC 常用 Handler Mapping
@、默认的ControllerClassNameHandlerMapping
@、常用的SimpleUrlHandlerMapping
@、BeanNameUrlHandlerMapping
@、基于注解Controller时使用的DefaultAnnotationHandlerMapping
基于注解的MVC
@、@Controller
@、@RequestMapping
@、@RequestParam, @PathVariable, @CookieValue
@、Handler方法的可用参数与返回值
Spring MVC 常用 ViewResolver & View
@、 InternalResourceViewResolver、UrlBasedViewResolver
@、Redirect重定向视图(redirect:)
@、XmlViewResovler
@、视图链
@、JstlView,ExcelView及自定义view (JsperReport, Pdf, Excel)
拦截器、视图国际化、验证
@、 Interceptor
@、resourceMessage
@、JSR-303 validate bean