HandlerMapping接口的实现类:
SimpleUrlHandlerMapping:通过配置文件,把一个URL映射到Controller
HandlerAdapter接口:处理请求的映射
Controller接口:控制器
由于我们使用了@Controller注解,添加了@Controller注解,注解的类就可以担任控制器(Action)的职责,所以我们并没有用到这个接口。
HandlerInterceptor接口:拦截器
需自己实现这个接口,来完成拦截的器的工作。
ViewResolver接口的实现类:
UrlBasedViewResolver类 通过配置文件,把一个视图名交给到一个View来处理
HandlerExceptionResolver接口:异常处理
SimpleMappingExceptionResolver实现类
@Resource 自动注入[根据名称注入],可写参数name=""
@Controller 表示控制器
@Service 表示业务处理层[一般在serviceImpl]
@Repository 表示持久层[一般在daoImpl]
@Component 当你的类不清楚是哪一层的时候使用该注解
@ResponseBody 异步返回数据类型为json
@RequestMapping 路径,请求类型等设置
@InitBinder 数据绑定
DispatcherServlet是前置控制器,配置在web.xml文件中。用来拦截匹配到的请求。
<url-pattern>*.do</url-pattern> 会拦截*.do结尾的请求。
在DispatcherServlet初始化时,框架会在WEB-INF文件夹下寻找名为theDispatcher-servlet.xml 的配置文件,生成文件中定义的bean。
五、theDispatcher-servlet.xml 配置文件:
<!-- 默认的注解映射的支持 -->
<mvc:annotation-driven /><!--会自动注册DefaultAnnotationHandlerMapping与AnnotationMethodHandlerAdapter 两个bean,是spring MVC为@Controllers分发请求所必须的,并提供了数据绑定支持,@DateTimeFormat支持,@Valid支持,@NumberFormatannotation支持,读写XML的支持(JAXB),读写JSON的支持(Jackson)。-->
<!-- 自动扫描的包名 -->
<context:component-scan base-package="com.well" />
<!-- 视图解析类 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
<mvc:interceptors/> 可以配置多个HandlerMapping。它会为每个HandlerMapping注入一个拦截器。
<mvc:default-servlet-handler/> 使用默认的Servlet来响应静态文件。
<mvc:resources/>把mapping的URI注册到SimpleUrlHandlerMapping的urlMap中。