SpringMVC 的五大核心组件

1.SpringMVC 的五大核心组件:

  DispatcherServlet 请求的入口
  HandlerMapping 请求的派发 负责让请求 和 控制器建立一一对应的关联
  Controller 真正的处理器
  ModelAndView 封装模型信息和视图信息的
  ViewResolver 视图处理器 最终定位页面的

2.Spring MVC 的编程步骤 访问 WEB-INF 下的 hello.jsp
   1 建立一个项目 导入jar包(mvc ioc) 拷贝spring 容器对应的配置文件到src下
      并在WEB-INF 下 建立一个 hello.jsp
   2 在 web.xml 中 配置 DispatcherServlet 并通过初始化参数 contextConfigLocation
      指定Spring 容器对应的配置文件  

    <!-- 配置请求入口 -->
    <servlet>
      <servlet-name>SpringMVC</servlet-name>
      <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
      <!-- 配置初始化参数 -->
      <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:applicationContext.xml</param-value>
      </init-param>
    </servlet>
    <servlet-mapping>
      <servlet-name>SpringMVC</servlet-name>
      <url-pattern>*.do</url-pattern>
    </servlet-mapping>


   3 在Spring 配置文件中 配置 HandlerMapping的实现类 SimpleUrlHandlerMapping

    <bean id="handlerMapping"
      class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
      <property name="mappings">
        <props>
          <prop key="/toHello.do">helloController</prop>
        </props>
      </property>
    </bean>


   4 写一个控制器类 实现 Controller 接口      

    控制器方法中返回 ModelAndView 

    public class ToHelloController implements Controller {

      @Override
      public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
      ModelAndView mav = new ModelAndView();
      // 设置视图信息
      mav.setViewName("hello");
      return mav;
      }

    }

    在Spring 容器中配置控制器 

    <!-- 配置控制器 -->
    <bean id="helloController" class="com.xiaoka.controller.ToHelloController">
    </bean>

 

   5 配置ViewResolver 的实现类 InternalResourceViewResolver       

    <!-- 配置视图处理器 -->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
      <property name="prefix" value="/WEB-INF/"></property>
      <property name="suffix" value=".jsp"></property>
    </bean>

posted @ 2019-04-17 13:00  Hero丶小卡  阅读(8357)  评论(0编辑  收藏  举报