Spring MVC
Spring MVC介绍
首先spring MVC是spring的一部分,是无缝衔接;其次spring MVC是一个web层框架,用来接收参数,响应请求。
快速搭建
首先得是一个web项目,在要在web.xml中配置一个spring MVC核心接收参数的类,spring MVC用的是Servlet开发的。
1、创建一个maven web项目
2、导包
spring所有包 + spring-web spring mvc
3、写配置文件
springMVC.xml位置随便放,但如果是idea工具,最好放在resources下
开启注解
<context:component-scan base-package="com.hd.controller"></context:component-scan>
4、写个测试类(controller)
@Controller
public class HelloController {
@RequestMapping("/hello")
public void hello(){
System.out.println("spring MVC");
}
}
5、在web.xml里面输入springMVC核心类
6、测试 打开网页 输入地址
注意:使用maven项目,打包的方式要改为war,默认的是jar。改成war配置Tomcat就会选用 xxx.war
打开网页可能会有404错误,在控制台打印了代码,就说明我们写的方法已经被执行了
modelAndView
调用它的setViewName方法可以实现页面的转发
@RequestMapping("/hello")
public ModelAndView hello(){
System.out.println("spring MVC");
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("/index.jsp");
return modelAndView;
}
spring MVC框架的结构
请求到达web.xml 配置了前端控制器(DispatcherServlet)
url-partten *.action
2、前端控制器就是一个老板,老板拿到了需求,指派HandlerMapping,解析请求,和配置文件中的拦截器,并且将处理的结果找到对应的handler返回给老板
3、老板这个时候去找handler执行器,执行结果
handleAdapter 去执行对应的方法
这个方法可以是modelAndView void json字符串
modelAndView 将数据和跳转的页面都封装到modelAndView ,这个类中,将modelAndView 返回给老板
4、老板接收到modelAndView ,对这个modelAndView 进行解析,指派viewResolve来解析视图,获得view
5、老板在拿到view交给视图渲染器去渲染,渲染成HTML,返回给老板,老板将最终的成品交给客户。