- SpringMVC是表现层框架,用于接收从持久层,业务层到页面的数据,然后将其显示于页面上。
2.SpringMVC流程:==>model: javabean view:jsp contorller:servlet
(应用于前后端分离)
请求参数–>到达控制器(sevlet)–>封装进javaBean中–>与业务层进行交互–>servlet封装–>javaBean返回数据到view层中
3.SpringMVC是基于java的实现mvc设计模式的请求驱动类型轻量级Web框架,我们通常还需要HTTPservlet请求,而在springmvc中不太需要,只需要一个类就行(注解,resultful编程风格)
4.SpringMVC与Struts2的异同点?
同:都有mvc框架,都离不开原始servletAPI,处理机制都会有核心控制器
异: 1.基于方法设计的,只有一个单例;而struts2还得每次创建
2.springmvc支持异步,
3.struts支持OGNL表达式,执行效率不高。
5.需求:入门程序
请求–>servlet(jsp)–>处理–>返回(显示)
6.前端控制器
web.xml ==>你发任何的请求都会经过这个servlet
控制你的类调用业务层,springIOC进行类控制,注解扫描一气呵成
<context :component-scan base-package="cn.itcast"/> ==>扫到了形成对象控制
在方法上再加一个注解@RequestMapping
加载springmvc.xml配置文件加载,用前端控制器加载,就可以使用注解了
相当于我们执行完以后,可以跳转到自己定义的页面<==(配置视图解析器对象,帮你跳转到想要的页面,需要配置两个属性,1.目录路径 name="prefix" value ="/WEB-INF/pages/"2.后缀名 name="suffix",value=".jsp")
- 最后开启MVC框架注解的支持
mvc:annotation-driven/ - 启动服务器,RequestMapping是基于controller层的,请求项目名/hello
- 流程总结:
1.启动服务器,加在一些配置文件
web.xml中配置这个标签,加载DispatcherServlet,这个servlet执行springmvc.xml文件==>注解扫描==>将controller这个类加载成对象(单例)>视图解析器bean标签,也会变成对象,直接可以工作,跳转页面>开启SpringMVC注解RequestMapping后,发请求直接找到对象调用方法
2.发送请求,后台处理这个请求
写了一个超链接,帮助我们发送请求(项目名称/hello),第一个执行的就是web.xml里面的ispatcherServlet(因为不管是任何请求都要经过前端控制器<指挥中心>)==>(1)(对应)根据controller里面的注解path ==>目的是:让这个方法去执行,return “success”(2)加载视图解析器,因为配置,帮助咱们跳转success.jsp(总结:springmvc.xml里面只加载注解,形成放对象的容器;而前端控制器则是既支持自动加载,又支持加载springMVC.xml,还加载视图加载器)
3.前端控制器将响应后的结果显示到view层