JavaSpringFrameworkJava学习笔记

SpringMVC笔记

2017-04-04  本文已影响169人  l_sivan

前言:一年前看视频学习这个框架的时候做的笔记。。。现在自己看来觉得还是有点蛋疼。。。想了想还是放上来了,万一开发要看呢,求勿喷。。。

springmvc

基本流程

1.用户提交请求。
2.DispatchServlet接收到请求,将请求交给 HandlerMapping处理,而HandlerMapping将会把请求映射为HandlerExecutionChain对象(包含一个Handler处理器(页面控制器)对象、多个HandlerInterceptor拦截器)对象。
3.DispatchSerlvet调用HandlerAdapter来调用Handler(Controller),HandlerAdapter将会把处理器包装为适配器,HandlerAdapter将会根据适配的结果调用真正的处理器的功能处理方法,完成功能处理;并返回一个ModelAndView对象(包含模型数据、逻辑视图名)
4.DispatchServlet调用ViewResolver,ViewResolver将把逻辑视图名解析为具体的View。
5.将Model的数据渲染到View上。
6.将View返回到用户。

访问了两次,HelloAction的构造函数只执行一次,可以看到构造函数下面一行红字上写着,XXXSingletons,证明Controller是单例的。而且创建这个单例的时间,还是在HandlerMapping工作之前的(同样可以看红字看出来,Mapped URL XXXX)

收集参数(不分版本):

返回Json数据

示例

springmvc拦截器

比如:
1)字符编码例如request.setCharacterEncoding("utf-8");response.setCharacterEncoding("utf-8");(假设没配置字符串过滤器,)
2)权限校验(request.getSession().getAttribute("user")!=null等)
方法和struts2都是一样的,通过request或者response加以控制来实现。

上一篇 下一篇

猜你喜欢

热点阅读