Spring MVC ControllerClassNameHandlerMapping example
来源:互联网 发布:外贸英语的软件 编辑:程序博客网 时间:2024/05/28 22:11
In Spring MVC, ControllerClassNameHandlerMapping
use convention to map requested URL to Controller (convention over configuration). It takes the Class name, remove the ‘Controller
’ suffix if exists and return the remaining text, lower-cased and with a leading “/
”.
See following few examples to demonstrate the use of this ControllerClassNameHandlerMapping
class.
1. Before and After
By default, Spring MVC is using the BeanNameUrlHandlerMapping
handler mapping.
<beans ...> <bean name="/welcome.htm" class="com.mkyong.common.controller.WelcomeController" /> <bean name="/helloGuest.htm" class="com.mkyong.common.controller.HelloGuestController" /></beans>
To enable the ControllerClassNameHandlerMapping
, declared it in the bean configuration file, and now the controller’s bean’s name is no longer required.
<beans ...> <bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping" /> <bean class="com.mkyong.common.controller.WelcomeController" /> <bean class="com.mkyong.common.controller.HelloGuestController" /></beans>
Now, Spring MVC is mapping the requested URL by following conventions :
WelcomeController -> /welcome*HelloGuestController -> /helloguest*
/welcome.htm
–> WelcomeController
. /welcomeHome.htm
–> WelcomeController
. /helloguest.htm
–> HelloGuestController
. /helloguest12345.htm
–> HelloGuestController
. /helloGuest.htm
, failed to map /helloguest*
, the “g
” case is not match.
2. Case sensitive
To solve the case sensitive issue stated above, declared the “caseSensitive
” property and set it to true.
<beans ...> <bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping" > <property name="caseSensitive" value="true" /> </bean> <bean class="com.mkyong.common.controller.WelcomeController" /> <bean class="com.mkyong.common.controller.HelloGuestController" /></beans>
Now, Spring MVC is mapping the requested URL by the following conventions :
WelcomeController -> /welcome*HelloGuestController -> /helloGuest*
/helloGuest.htm
–> HelloGuestController
. /helloguest.htm
, failed to map “/helloGuest*
”, the “G
” case is not match.
3. pathPrefix
Additionally, you can specify a prefix to maps the requested URL, declared a “pathPrefix
” property.
<beans ...> <bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping" > <property name="caseSensitive" value="true" /> <property name="pathPrefix" value="/customer" /> </bean> <bean class="com.mkyong.common.controller.WelcomeController" /> <bean class="com.mkyong.common.controller.HelloGuestController" /></beans>
Now, Spring MVC is mapping the requested URL by the following conventions :
WelcomeController -> /customer/welcome*HelloGuestController -> /customer/helloGuest*
/customer/welcome.htm
–> WelcomeController
. /customer/helloGuest.htm
–> HelloGuestController
. /welcome.htm
, failed. /helloGuest.htm
, failed.
- Spring MVC ControllerClassNameHandlerMapping example
- Spring MVC ControllerClassNameHandlerMapping example
- Spring Web MVC 的HandlerMapping的使用之-------ControllerClassNameHandlerMapping
- Spring MVC - DispatcherServlet Example
- Spring MVC Model Example
- Spring MVC MultiActionController example
- Spring MVC PropertiesMethodNameResolver example
- Spring MVC ParameterMethodNameResolver example
- Spring MVC ParameterMethodNameResolver example
- Spring MVC ParameterizableViewController example
- Spring MVC InternalResourceViewResolver example
- Spring MVC XmlViewResolver example
- Spring MVC ResourceBundleViewResolver example
- Spring MVC BeanNameUrlHandlerMapping example
- Spring MVC SimpleUrlHandlerMapping example
- Spring MVC RedirectView example
- Spring MVC textbox example
- Spring MVC BeanNameUrlHandlerMapping example
- C++中Operator类型强制转换成员函数解析
- 关于jvm的几点学习
- Configure multiple view resolvers priority in Spring MVC
- Spring MVC BeanNameUrlHandlerMapping example
- programming-challenges Smith Numbers (110706) 题解
- Spring MVC ControllerClassNameHandlerMapping example
- 【bzoj1965】【Ahoi2005】【SHUFFLE 洗牌】【快速幂】
- iOS开发系列之Objective-C基础:NSString字符串类型(二)
- swift 类型定义
- mysql数据同步
- 网站每天被抓取新页面的经验心得ccxtqj
- Spring MVC SimpleUrlHandlerMapping example
- Configure the handler mapping priority in Spring MVC
- 网站优化不要经常更换空ccxtqj间