SpringMVC创建流程:
1.创建一个WEB工程
2.导入Spring对应的包
3.配置web.xml(主要配置DispactherServlet的初始化参数:配置SpringMvc配置文件的名称和位置)
4.创建对应的java类,并标记@controllor和@RequestMapping
5.在对应的spring配置文件里配置创建的类所属的包。创建视图解析器并前缀和后缀等信息。
6.
1).使用@RequestMapping注解来映射请求的url
2).返回值会通过视图解析器解析为实际的物理视图,对于InternalResourceViewResolver视图解析器,会做如下的解析
prefix+returnVal+后缀这样的方式得到实际的物理视图,然后做转发操作
WEB-INF/views/success.jsp
preifix=/WEB-INF/views/
returnVal=success
suffix=.jsp
7.SpringMVC 处理请求过程:
1). 若一个请求匹配 DispatcherServlet 的请求映射路径(在 web.xml 中指定), WEB 容器将该请求转交给 DispatcherServlet 处理
2). DispatcherServlet 接收到请求后, 将根据请求信息(包括 URL、HTTP 方法、请求头、请求参数、Cookie 等)及 HandlerMapping 的配置找到处理请求的处理器(Handler). 可将 HandlerMapping 看成路由控制器,将 Handler 看成目标主机。
3). 当 DispatcherServlet 根据 HandlerMapping 得到对应当前请求的 Handler 后,通过 HandlerAdapter 对 Handler 进行封装,再以统一的适配器接口调用 Handler。
4). 处理器完成业务逻辑的处理后将返回一个 ModelAndView 给 DispatcherServlet,
ModelAndView 包含了视图逻辑名和模型数据信息
5). DispatcherServlet 借助 ViewResoler 完成逻辑视图名到真实视图对象的解析
6). 得到真实视图对象 View 后 , DispatcherServlet 使用这个 View 对
ModelAndView 中的模型数据进行视图渲染
1.@RequestMapping除了可以修饰方法,还可以修饰类
2.
1).类定义处:提供初步的请求映射信息。相对于WEB应用的根目录
2).方发处:提供进一步的细分映射信息
相对于类定义处的URL。若类定义处为标记@RequestMapping,则方发处标记URL相对于WEB应用的根目录