默认包含Spring MVC bean



我是SpringMVC的新手,当我在NetBeans 8.0中创建新的web应用程序项目时,我看到dispatcher-servlet.xml包含以下内容:

<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
    <property name="mappings">
        <props>
            <prop key="index.htm">indexController</prop>
        </props>
    </property>
</bean>
<bean id="viewResolver"
      class="org.springframework.web.servlet.view.InternalResourceViewResolver"
      p:prefix="/WEB-INF/jsp/"
      p:suffix=".jsp" />
<bean name="indexController"
      class="org.springframework.web.servlet.mvc.ParameterizableViewController"
      p:viewName="index" />
你能简单地解释一下这些豆子的用途吗?

当客户端请求web应用程序中的资源时,Spring Front Controller会拦截该请求并尝试找到合适的处理程序映射。

Handler映射通过浏览配置文件中定义的各种控制器,将来自客户端的请求映射到它的控制器对象。

    <bean id="urlMapping"  class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
    <property name="mappings">
    <props>
        <prop key="index.htm">indexController</prop>
    </props>
    </property>
    </bean>

这是一个处理器映射Bean。这个bean的核心目的是将请求映射到控制器对象。

SimpleUrlHandlerMapping是直接将客户端请求映射到控制器对象的最简单的HandlerMapping。

在Property标签中,我们有一个'prop'元素,'Key'属性是Url, value是Controller对象的标识符。

现在我们知道要将请求转发到哪个控制器对象,处理器适配器将请求转发到控制器对象。

         <bean name="indexController"
  class="org.springframework.web.servlet.mvc.ParameterizableViewController"
  p:viewName="index" />

这是一个实现Controller接口的Controller Bean

控制器中的HandleRequest方法返回带有逻辑视图名称的ModelAndView对象。视图解析器映射逻辑视图名称和视图的物理位置
  <bean id="viewResolver"
  class="org.springframework.web.servlet.view.InternalResourceViewResolver"
  p:prefix="/WEB-INF/jsp/"
  p:suffix=".jsp" />

这是视图解析器Bean,它映射逻辑名称和物理视图位置。

InternalResourceViewResolver是一个内置的Spring解析器

相关内容

  • 没有找到相关文章

最新更新