Spring MVC BeanNameUrlHandlerMapping example
In Spring MVC, BeanNameUrlHandlerMapping
is the default handler mapping mechanism, which maps URL requests to the name of the beans. For example,
<beans ...>
<bean
class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>
<bean name="/welcome.htm"
class="com.mkyong.common.controller.WelcomeController" />
<bean name="/streetName.htm"
class="com.mkyong.common.controller.StreetNameController" />
<bean name="/process*.htm"
class="com.mkyong.common.controller.ProcessController" />
</beans>
In above example, If URI pattern
/welcome.htm
is requested,DispatcherServlet
will forward the request to the “WelcomeController
“./streetName.htm
is requested,DispatcherServlet
will forward the request to the “StreetNameController
“./processCreditCard.htm
or/process{any thing}.htm
is requested,DispatcherServlet
will forward the request to the “ProcessController
“.
Actually, declare BeanNameUrlHandlerMapping
is optional, by default, if Spring can’t found handler mapping, the DispatcherServlet
will creates a BeanNameUrlHandlerMapping
automatically.
So, the above web.xml
file is equivalence to the following web.xml
:
<beans ...>
<bean name="/welcome.htm"
class="com.mkyong.common.controller.WelcomeController" />
<bean name="/streetName.htm"
class="com.mkyong.common.controller.StreetNameController" />
<bean name="/process*.htm"
class="com.mkyong.common.controller.ProcessController" />
</beans>