zoukankan      html  css  js  c++  java
  • SpringMVC简介及工作原理

    SpringMVC是Spring框架提供的一个实现webMVC设计模式的轻量级框架它于Sturts2框架一样,都属于MVC框架

       三层架构:
                    表现层:
                        web层,用来和客户端进行数据交互的,表现层一般会采用MVC的设计模式
                    业务层:
                        处理公司具体的业务逻辑
                    持久层:
                        用来操作数据库的

                MVC的设计模型:
                    MVC的全称是Model View Controller 模型视图控制器,每个部分都各司其职
                        1.Model:数据模型,JavaBean(实体类)对象,用来进行数据封装的
                        2.View:视图,具体指的是我们Jsp,HTML,用来展示数据,给用户看的
                        3.Contrller:用来接收用户的请求,整个流程的控制器,用来进行数据校验等

    SpringMVC工作原理:

      1、  用户发送请求至前端控制器DispatcherServlet。
            2、  DispatcherServlet收到请求调用HandlerMapping处理器映射器。
            3、  处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet。
            4、  DispatcherServlet调用HandlerAdapter处理器适配器。
            5、  HandlerAdapter经过适配调用具体的处理器(Controller,也叫后端控制器)。
            6、  Controller执行完成返回ModelAndView。
            7、  HandlerAdapter将controller执行结果ModelAndView返回给DispatcherServlet。
            8、  DispatcherServlet将ModelAndView传给ViewReslover视图解析器。
            9、  ViewReslover解析后返回具体View。
            10、 DispatcherServlet根据View进行渲染视图(即将模型数据填充至视图中)。
            11、视图渲染结果会返回给客户端浏览器显示。

    SpringMVC特点:

      1,是Spring框架的一部分,可以方便的利用Spring提供的功能

      2,灵活性强,易于其他框架继承

      3,提供了DispatcherServlet,使开发人员无需开发额外的控制器对象

      4,可自动绑定用户输入,并能正确的转换数据类型

      5,内置了常见的校验器,可以校验用户输入,如果不能通过,那么就会重定向到输入表单

      6,支持国际化,可以根据用户区域显示多国语言

      7,支持多种视图技术

      8,使用基于XML配置文件,在编译后,不需要从新编译应用程序

    实例代码:

      1,导入jar包

      2,编写web.xml

    在上述代码中<load-on-startup>元素和<init-param>元素都是可选的,如果<load-on-startup>元素的值为1,则在应用程序启动时会立即加载该Servlet;

    如果<load-on-startup>元素不存在,则应用程序会在第一个Servlet请求时加载该Servlet。如果<init-param>元素存在并且通过其子元素配置了

    SpringMVC配置文件的路径,则应用程序在启动时会加载配置路径下的配置文件;如果没有<init-param>元素配置,则应用程序会默认到WEB-INF目录下

    寻找如下命名方式的配置文件:servletName-servlet.xml这个servletName指的是部署在web.xml中的DispatcherServlet的名称,

    在上面web.xml中的配置代码即为Springmvc,- servlet.xml是配置文件的固定写法

      3,编写SpringMVC配置文件

    首先定义了一个名称为"/firstcontroller"的Bean,该Bean会将控制器类FirstController映射到"/firstcontroller"请求中,

    然后配置了处理器映射器BeanNameUrlHandlerMapping和处理器适配器SimpleControllerHandlerAdapter,其中处理器映射器用

    于将处理器Bena中的name(url)进行处理器查找,而处理器适配器用于完成对FirstController处理器中的handlerRequest()方法的调

    用,最后配置了视图解析器InternalResourceViewResolver来解析结果是,并将结果呈现给用户

    注意:在Spring 4.0以后,就不需要配置处理器映射器BeanNameUrlHandlerMapping和处理器适配器SimpleControllerHandlerAdapter了

      4,编写Controller类

      5,jsp页面

  • 相关阅读:
    使用comet架构实现了一个基于网页的视频监控prototype!!!!哇哈哈庆祝一下
    Pixysoft.Framework.Noebe.Datamining 数据挖掘开发实录
    论创业成功!让大家的青春充满着无限美好的回忆
    新年第一篇 数据库备份恢复系统上线的挫折
    .Net FrameWork 4.0中使用EF向数据库插入数据报datatime2类型错误的解决办法
    RoRoWoBlog 开源博客系统介绍
    第一次偶然出现的“System.Data.Entity.dll”类型的异常
    序列化类型 System.Data.Entity.DynamicProxies 的对象时检测到循环引用
    我也来说说Entity Frame Work 4中的数据库优先和代码优先两种方式(2)
    Asp.net MVC 2 + Castle + NHibernate 项目实战(1)
  • 原文地址:https://www.cnblogs.com/yz-bky/p/12675401.html
Copyright © 2011-2022 走看看