码迷,mamicode.com
首页 > 编程语言 > 详细

springMVC的流程

时间:2019-09-03 21:56:32      阅读:80      评论:0      收藏:0      [点我收藏+]

标签:ann   就会   org   spring   dem   bsp   来替   mic   Servle   

1. 写一个简单的springmvcdemo.

 

1.1 引入springmvc相关的jar包。

 

技术图片

 

1.2 配置DispatcherServlet web.xml

技术图片

 

 

 

1.2 配置springmvc的配置文件。

 

 技术图片

 

 1.3 Controller

技术图片

 

 

 

Springmvc的流程.

  1. 客户发出请求。http://localhost:8080/springmvc-01/my.do
  2. 到达web.xml文件中 DispatcherServlet.查看是否符合url的要求
  3. DispatcherServlet就会查询springmvc的配置文件。找HandlerMapping.

技术图片

 

根据bean的名称查找相应的controller.

 技术图片

 

     找到我的MyController类。执行该类中handleRequestInternal方法。

 技术图片

 

     根据返回的modelAndView在找springmvc配置文件中视图解析器。

 技术图片

 

 

viewNameprefix以及suffix做了一个拼接。把拼接的页面展示给客户。

 

 

2. 常见的HandlerMapping

2.1 BeanNameUrlHandlerMapping 根据bean标签的名称找到对应的Controller

 

    <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
        <property name="mappings">
            <props>
                <prop key="/a.do">my1</prop>
                <prop key="/b.do">my2</prop>
            </props>
        </property>
    </bean>
    <bean id="my1" class="com.zhiyou100.wyf.controller.MyController1"></bean>
    <bean id="my2" class="com.zhiyou100.wyf.controller.MyController2"></bean>

 

 

 

2.2 SimpleUrlHandlerMapping 根据beanid查找对应的Controller类。

 技术图片

 

 

 

2.3 ControllerClassNameHandlerMapping 根据controller类的名字找到对应的Controller

 

 <bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping"></bean>
    <bean class="com.zhiyou100.wyf.controller.MyController3"></bean>

 

 

 

2.4 使用注解来替代配置信息。

  1. 额外aopjar
  2. springmvc配置文件中加入如下代码。

 技术图片

 

 创建Controller类。

 技术图片

 

 

 

通过springmvc来完成接受参数。

1.1 

 技术图片

 

 

接受参数时出现乱码。使用过滤器。(自定义的过滤器 也可以使用springmvc提供的过滤器)

 

 <filter>
           <filter-name>encodingFilter</filter-name>
           <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
           <init-param>
               <param-name>encoding</param-name>
               <param-value>utf-8</param-value>
           </init-param>
   </filter>
   <filter-mapping>
           <filter-name>encodingFilter</filter-name>
           <url-pattern>/*</url-pattern>
   </filter-mapping>

 

springMVC的流程

标签:ann   就会   org   spring   dem   bsp   来替   mic   Servle   

原文地址:https://www.cnblogs.com/yufengwang/p/11455812.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!