SpringMVC进阶(一)——结构和流程

    Spring MVC 是一种基于 Java 的实现了 Web MVC 设计模式的请求驱动类型的轻量级 Web 框架, 即使用了 MVC 架构模式的思想,将 web 层进行职责解耦, 基于请求驱动指的就是使用请求-响应模型, 框架的目 的就是帮助我们简化开发, Spring Web MVC 也是要简化我们日常 Web 开发的。
   

    一、spring-mvc结构


    1.DispatcherServlet:中央控制器,把请求给转发到具体的控制类

    2.Controller:具体处理请求的控制器

    3.handlerMapping:映射处理器,负责映射中央处理器转发给controller时的映射策略

    4.ModelAndView:服务层返回的数据和视图层的封装类

    5.ViewResolver  & View:视图解析器,解析具体的视图

    6.Interceptors :拦截器,负责拦截我们定义的请求然后做处理工作

    红色的是需要自己创建,黑色的需要配置。


    二、流程处理


    见下图:

    SpringMVC进阶(一)——结构和流程_第1张图片

    

    三、第一个SpringMVC实例


    1.创建web项目


        SpringMVC进阶(一)——结构和流程_第2张图片

   

    2.导入依赖jar包


      SpringMVC进阶(一)——结构和流程_第3张图片

  

    3.配置中央控制器

      在web.xml中添加如下配置:

        

	
	
		springmvc
		org.springframework.web.servlet.DispatcherServlet
		
	
		springmvc
		
		*.do
	

    4.配置springMVC的核心配置文件


      文件的命名规则:中央控制器(servlet的名称)+"-servlet.xml"

      文件位置:WEB-INF下

      创建后再springmvc-servlet.xml中配置controller和视图解析器。

		
		
		
				
		
			
			
			
			
		



    5.创建controller

    

public class MyController extends AbstractController{

	@Override
	protected ModelAndView handleRequestInternal(HttpServletRequest arg0,
			HttpServletResponse arg1) throws Exception {
		
		System.out.println("hello world~~");
		return new ModelAndView("hello");
	}

}

    6.访问结果

    

    

    总结:springMVC和之前的struts2比起来,有很多联系的地方

    1.web.xml:struts2中配置的是StrutsPrepareAndExecuteFilter;而springMVC中配置的是DispatcherServlet.他们的作用大致相同,都是为了前台的url然后做统一处理;不同的是StrutsPrepareAndExecuteFilter拦截请求后执行的是doFilter方法,DispatcherServlet拦截请求后执行的是DoDispatch方法,两者性质差不多。

    2.配置文件:struts2中的struts2.xml和springMVC中springmvc-servlert.xml,都是中都包含了讲请求的url和Action或Bean名字的映射功能;

    3.不同之处:struts在struts2中配置不同的返回值来返回不同的视图;而springMVC中可以通过ViewResolver来规定返回视图的前缀和后缀,再视图返回的结果上自动加上我们写好的前缀和后缀来找到相应视图。

你可能感兴趣的:(SpringMVC)