springMVC的流程 1. 写一个简单的springmvc的demo. 2. 常见的HandlerMapping 通过springmvc来完成接受参数。

1. 写一个简单的springmvcdemo.

1.1 引入springmvc相关的jar包。

springMVC的流程
1. 写一个简单的springmvc的demo.
2. 常见的HandlerMapping
通过springmvc来完成接受参数。

1.2 配置DispatcherServlet web.xml

springMVC的流程
1. 写一个简单的springmvc的demo.
2. 常见的HandlerMapping
通过springmvc来完成接受参数。

1.2 配置springmvc的配置文件。

 springMVC的流程
1. 写一个简单的springmvc的demo.
2. 常见的HandlerMapping
通过springmvc来完成接受参数。

 1.3 Controller

springMVC的流程
1. 写一个简单的springmvc的demo.
2. 常见的HandlerMapping
通过springmvc来完成接受参数。

Springmvc的流程.

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

springMVC的流程
1. 写一个简单的springmvc的demo.
2. 常见的HandlerMapping
通过springmvc来完成接受参数。

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

 springMVC的流程
1. 写一个简单的springmvc的demo.
2. 常见的HandlerMapping
通过springmvc来完成接受参数。

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

 springMVC的流程
1. 写一个简单的springmvc的demo.
2. 常见的HandlerMapping
通过springmvc来完成接受参数。

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

 springMVC的流程
1. 写一个简单的springmvc的demo.
2. 常见的HandlerMapping
通过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类。

 springMVC的流程
1. 写一个简单的springmvc的demo.
2. 常见的HandlerMapping
通过springmvc来完成接受参数。

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配置文件中加入如下代码。

 springMVC的流程
1. 写一个简单的springmvc的demo.
2. 常见的HandlerMapping
通过springmvc来完成接受参数。

 创建Controller类。

 springMVC的流程
1. 写一个简单的springmvc的demo.
2. 常见的HandlerMapping
通过springmvc来完成接受参数。

 

通过springmvc来完成接受参数。

1.1 

 springMVC的流程
1. 写一个简单的springmvc的demo.
2. 常见的HandlerMapping
通过springmvc来完成接受参数。

接受参数时出现乱码。使用过滤器。(自定义的过滤器 也可以使用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>