springmvc知识点总结,spring启动过程
- 软件开发
- 2023-09-19
- 80
大家好,今天小编来为大家解答以下的问题,关于springmvc知识点总结,spring启动过程这个很多人还不知道,现在让我们一起来看看吧!spring mvc中可以通过...
大家好,今天小编来为大家解答以下的问题,关于springmvc知识点总结,spring启动过程这个很多人还不知道,现在让我们一起来看看吧!
spring mvc中可以通过哪些条件来限定处理器的映射关系
BeanNameUrlHandlerMapping根据对象的名字来进行处理器映射,此时该对象要继承AbstractController实现handlerRequestInternal方法;对请求的处理主要在该方法中完成。
springmvc的工作流程是什么
spring工作的流程
流程如下:
1、用户发起请求到前端控制器(DispatcherServlet),该控制器会过滤出哪些请求可以访问Servlet、哪些不能访问。就是url-pattern的作用,并且会加载springmvc.xml配置文件。
2、前端控制器会找到处理器映射器(HandlerMapping),通过HandlerMapping完成url到controller映射的组件,简单来说,就是将在springmvc.xml中配置的或者注解的url与对应的处理类找到并进行存储,用map<url,handler>这样的方式来存储。
3、HandlerMapping有了映射关系,并且找到url对应的处理器,HandlerMapping就会将其处理器(Handler)返回,在返回前,会加上很多拦截器。
4、DispatcherServlet拿到Handler后,找到HandlerAdapter(处理器适配器),通过它来访问处理器,并执行处理器。
5、执行处理器
6、处理器会返回一个ModelAndView对象给HandlerAdapter
7、通过HandlerAdapter将ModelAndView对象返回给前端控制器(DispatcherServlet)
8、前端控制器请求视图解析器(ViewResolver)去进行视图解析,根据逻辑视图名解析成真正的视图(jsp),其实就是将ModelAndView对象中存放视图的名称进行查找,找到对应的页面形成视图对象
9、返回视图对象到前端控制器。
10、视图渲染,就是将ModelAndView对象中的数据放到request域中,用来让页面加载数据的。
11、通过第8步,通过名称找到了对应的页面,通过第10步,request域中有了所需要的数据,那么就能够进行视图渲染了。最后将其返回即可。
springmvc重要组件
SpringMVC重要的五大组件:
DispatcherServlet、HandleMapping、Controller、ModeAndView、ViewResolver。
1.DispatcherServlet
这个控件是SpringMVC最核心的一个控件,顾名思义其实他就是一个Servlet,是Spring写好的一个Servlet
2.HandleMapping
控件标明了路径与Controller的对应关系,不同的路径访问不同的Controller
3.Controller
用来处理业务逻辑的Java类
4.ModeAndView
Mode用来绑定处理后所得的数据,View视图名
5.ViewResolver
视图解析器明确了视图名与视图对象的关系,是调用demo.jsp还是调用demo.html,以及明确视图的位置
springmvc中的controller常用的注解有哪些
pringMVC常用的注解有:@Controller@ResquestMapping用来定义访问URL,可以为整个类定义,也可以单个的为每个方法定义一个@PathVariable@ModelAttribute获取页面参数@ResquestParam@ResponseBody@SessionAttributessession管理@CookieValue获取cookie信息我们重点了解常用的注解@Controler和@ResquestMapping@Controller:表明某个类是一个controller@ResquestMapping:请求路径映射,常常标注在一个类的方法上,也可以标注在整个类上,表明某个具体的方法来接受处理某次请求,标注在类上,表明访问此类路径下的方法(方法要单独标注配置路径,也就是请求路径,同上)
spring mvc流程详解
1、首先创建父容器(AnnotationConfigWebApplicationContext),通过自定义的getRootConfigClasses()拿到配置类,并注册到父容器中。
2、通过父容器作为参数创建ContextLoaderListener监听器。并添加到servletContext(Tomcatservlet容器)。
3、通过自定的getServletConfigClasses()方法拿到MVC的配置类创建子容器,并把配置类注册到子容器中。
4、创建DispatcherServlet,并将DispatcherServlet添加到servletContext的Servlet容器中去。
5、设置dispatcherServlet相关属性(启动时加载,设置映射路径)。
spring mvc的原理
SpringMVC属于SpringFrameWork的后续产品,已经融合在SpringWebFlow里面。
Spring框架提供了构建Web应用程序的全功能MVC模块。使用Spring可插入的MVC架构,可以选择是使用内置的SpringWeb框架还是Struts这样的Web框架。通过策略接口,Spring框架是高度可配置的,而且包含多种视图技术。
SpringMVC分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。
END,本文到此结束,如果可以帮助到大家,还望关注本站哦!
本文链接:http://xinin56.com/ruanjian/27364.html