SpringMVC中必须知道的关键词(接口、注解):

SpringMVC中的接口:

DispatcherServlet:

前端控制器,由springMVC提供;

HandlerMapping :

处理器映射器,由springmvc提供;

接口方法是getHandler方法,作用是获取匹配的handler。实现类为抽象类AbstractHandlerMapping,抽象类的getHandlerInternal方法,被自己子类AbstractHandlerMethodMapping重写,该子类通过lookupHandlerMethod返回匹配的handler。DispatcherServlet通过遍历所有的HandlerMapping来匹配正确的handler

HandlerAdapter :

处理器适配器,由springmvc提供,

作用:获取适配器Adapter,具有一个handle方法。DisPatcherServlet通过遍历所有的HandlerApdapter实现类来匹配可以处理具体handler的Adapter,设计基本与HandlerMapping一致。就是调用具体的方法对用户发来的请求来进行处理。

Handler:

处理器,需要程序员开发;

ViewResolver:

视图解析器,由springmvc提供;

寻找视图解析器,具有方法resolveViewName,通过ModelAndView中保存的视图名来遍历寻找合适的视图解析器。开发者可以通过实现该接口来自定义视图解析器

View:

真正视图页面需要程序编写

解析视图,具有render方法,解析视图。开发者可以通过实现该接口的render方法来实现解析视图的方法

HandlerInterceptor:

拦截请求,有三个拦截方法,分别是preHandle,postHandle,afterCompletion,Spring也是在DispatcherServlert中通过遍历容器中所有的HandlerInterceptor,在不同时期调用对应的拦截方法.开发者可以通过实现该接口进而将实现接口方法从而自定义拦截器

HandlerExceptonResolver:

处理异常,具有resolveException方法,Spring也是通过遍历所有的异常解析器来匹配可以解析具体异常的解析器。开发者可以通过实现该接口来完成自定义异常解析器; 可以 通过继承RuntimeException或者Exception来自定义异常类,并通过特定的注解来指定哪个异常处理器来处理该异常

ArgumentConverter:

类型转换器,Spring中的类型转换器都实现了该接口,开发者可以通过实现该接口来自定义类型转换器

ParamerResolver:

参数解析器,Spring中的参数解析器都实现了该接口,开发者可以通过实现该接口来自定义参数解析器

ReturnValueHandler:

返回值处理器,Spring中的返回值处理器都实现了该接口,开发者可以通过实现该接口来自定义返回值处理器

注解关键词:

@Controller

在spring 3.0中,通过@controller标注即可将class定义为一个controller类。

@RequestMapping

在类前面定义,则将url和类绑定。

在方法前面定义,则将url和类的方法绑定;

@RequestParam

一般用于将指定的请求参数付给方法中形参

@SessionAttributes

将ModelMap中指定的属性放到session中

@ModelAttribute

这个注解可以跟@SessionAttributes配合在一起用。可以将ModelMap中属性的值通过该注解自动赋给指定变量。

Guess you like

Origin blog.csdn.net/qq_43521500/article/details/120816637