java-BeanNameUrlHandlerMapping和SimpleUrlHandlerMapping之间的区别

前端之家收集整理的这篇文章主要介绍了java-BeanNameUrlHandlerMapping和SimpleUrlHandlerMapping之间的区别 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Spring BeanNameUrlHandlerMapping和SimpleUrlHandlerMapping有什么区别?

经过一些网站后,我了解到
BeanNameUrlHandlerMapping是DispatcherServlet的默认HandlerMapping.

同样在BeanNameUrlHandlerMapping中,您可以直接将URL与Controller映射.

但是使用SimpleUrlHandlerMapping也可以完成相同的操作.

我知道一些但不是很清楚的事情,它与

名称接受/但id无法…..但是我很困惑.

确切的区别是什么? SimpleUrlHandlerMapping有什么需要?

请解释…谢谢.

最佳答案
如果要映射多个URL映射到单个控制器类,则必须注册多个URL,这不是使用Spring IoC的好方法.

SimpleUrlHandlerMapping是使用映射或属性Bean定义URL映射的简单方法.这简化了Spring MVC中的url映射.

BeanUrlHandlerMapping示例

<bean name="/hello.htm" class="com.raistudies.ui.comtroller.HelloController"/>

<bean name="/sayHello*" class="com.raistudies.ui.comtroller.HelloController"/>

<bean id="urlHandler" class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>

重要:

>必须为每个URL定义一个bean
> Spring容器通过URL有一个bean.尽管所有网址都由同一个bean提供

示例SimpleUrlHandlerMapping

<bean id="helloController" class="com.raistudies.ui.controller.HelloController"/>

  <bean id="urlHandler" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
        <property name="urlMap">
            <map>
                <entry key="/hello.htm" value-ref="helloController"/>
                <entry key="/sayHello*" value-ref="helloController"/>
                <entry key="/welcome.html" value-ref="helloController"/>
                <entry key="/welcomeUser*" value-ref="helloController"/>
            </map>
        </property>
    </bean>

重要:

>对使用相同控制器的URL使用单个bean.
>不必为每个URL定义一个bean

猜你在找的Spring相关文章