根据登录流程解释Springmvc原理day3_5

我是研究僧i 提交于 2020-03-06 00:03:42

SpringMVC与Struts

SpringMVC采用Servlet。而Struts采用filter
Filter在容器启动之后即初始化;服务停止以后销毁,晚于Servlet。Servlet在是在调用时初始化,服务停止后销毁。
Struts2框架是类级别的拦截,SpringMVC是方法级别的拦截,一个方法对应一个request上下文,所以方法直接基本上是独立的。
SpringMVC实现了零配置,由于SpringMVC基于方法的拦截,有加载一次单例模式bean注入。

而Struts2是类级别的拦截,每次请求对应实例一个新的Action,需要加载所有的属性值注入,所以,SpringMVC执行效率和性能高于Struts2,但是开发效率略比Struts2差一些。
Struts2有自己的拦截Interceptor机制,SpringMVC可以采用独立的Aop方式也有自己的拦截器AbstractInterceptor

视图解析器 会 根据 把控制器返回的逻辑视图名 确定 渲染模型的视图文件的物理位置。

SpringMvc原理在这里插入图片描述

根据登录流程解释SpringMvc的原理
用户进入登录页面,输入用户名和密码进行登录请求,将登录请求发给DispatcherServlet,调用handleradapter,根据请求的路径来确定执行哪个控制器,在控制器中处理业务逻辑,从数据库中调出用户名和密码的数据,跟request.parameter获得的数据进行比较,如果用户名密码正确,则将用户放入model中,ModelAndView mv = new ModelAndView(viewname:“detail.jsp”, model:“person”,person),以ModelAndView对象发送给DispatcherServlet,通过视图解析器ViewReolver由detail.jsp得到物理地址/WEB-INF/view/detail.jsp,对mv对象进行视图渲染,即把数据在物理视图上显示,再返回给用户。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!