spring mvc url映射,怎样与action方法名自动对应,就是不加RequestMapping的value,也能自动对应起来

时间:2021-06-06 21:59:04
spring mvc url映射,怎样与action方法名自动对应,就是不加RequestMapping的value,也能自动对应起来

比如:

MainController{
      public ModelView test(){
      }
}

在前台输入test.do就能自动映射到test.do,而不用加@RequestMapping(value = "test.do")

16 个解决方案

#1


用Servlet
if (action.equals("test"))

然后在WEB.XML里面配置

 <servlet>
    <servlet-name>ActionServlet</servlet-name>
    <servlet-class>servlet.ActionServlet</servlet-class>
  </servlet>

  <servlet-mapping>
    <servlet-name>ActionServlet</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>

#2


其实Spring mvc的url映射,也是获取请求的路径,然后根据你一个个配置的RequestMapping 比较的
详解SpringMVC请求的时候是如何找到正确的Controller

你如果想不用RequestMapping实现/controller/methodName 直接匹配的话。只能自己去写一个filter,根据地址来匹配获取。但是感觉这样更麻烦一点

#3


不用注解就用xml配置喽,个人感觉都不麻烦吧,就像写个类非要写class关键字一样哈

#5


有道 理,我也学会了

#6


直接在web.xml配置下过滤器就好啦

#7


有道 理,    学会了!

#8


该回复于2015-10-24 08:44:43被管理员删除

#9


该回复于2015-10-24 09:43:06被管理员删除

#10


methodNameResolver

#11


引用 5 楼 qq_32249721 的回复:
有道 理,我也学会了
啥地方

#12


引用 11 楼 miaolq 的回复:
Quote: 引用 5 楼 qq_32249721 的回复:

有道 理,我也学会了
啥地方

十大

#13


引用 12 楼 miaolq 的回复:
Quote: 引用 11 楼 miaolq 的回复:

Quote: 引用 5 楼 qq_32249721 的回复:

有道 理,我也学会了
啥地方

十大


引用 12 楼 miaolq 的回复:
Quote: 引用 11 楼 miao十大撒撒lq 的回复:

Quote: 引用 5 楼 qq_32249721 的回复:

有道 理,我也学会了
啥地方

十大
十大a

#14


顶楼主,厉害

#15


learning~

#16


这个用spring自己的ControllerBeanNameHandlerMapping就可以解决啊

spring mvc 的映射处理器一共有4种,分别是:
ControllerBeanNameHandlerMapping、ControllerClassNameHandlerMapping、DefaultAnnotationHandlerMapping、SimpleUrlHandlerMapping
平时我们用的是DefaultAnnotationHandlerMapping,
如果想要实现你的需要,可以用ControllerBeanNameHandlerMapping

例子链接:
http://blog.csdn.net/zhang6622056/article/details/7621538

#1


用Servlet
if (action.equals("test"))

然后在WEB.XML里面配置

 <servlet>
    <servlet-name>ActionServlet</servlet-name>
    <servlet-class>servlet.ActionServlet</servlet-class>
  </servlet>

  <servlet-mapping>
    <servlet-name>ActionServlet</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>

#2


其实Spring mvc的url映射,也是获取请求的路径,然后根据你一个个配置的RequestMapping 比较的
详解SpringMVC请求的时候是如何找到正确的Controller

你如果想不用RequestMapping实现/controller/methodName 直接匹配的话。只能自己去写一个filter,根据地址来匹配获取。但是感觉这样更麻烦一点

#3


不用注解就用xml配置喽,个人感觉都不麻烦吧,就像写个类非要写class关键字一样哈

#4


#5


有道 理,我也学会了

#6


直接在web.xml配置下过滤器就好啦

#7


有道 理,    学会了!

#8


该回复于2015-10-24 08:44:43被管理员删除

#9


该回复于2015-10-24 09:43:06被管理员删除

#10


methodNameResolver

#11


引用 5 楼 qq_32249721 的回复:
有道 理,我也学会了
啥地方

#12


引用 11 楼 miaolq 的回复:
Quote: 引用 5 楼 qq_32249721 的回复:

有道 理,我也学会了
啥地方

十大

#13


引用 12 楼 miaolq 的回复:
Quote: 引用 11 楼 miaolq 的回复:

Quote: 引用 5 楼 qq_32249721 的回复:

有道 理,我也学会了
啥地方

十大


引用 12 楼 miaolq 的回复:
Quote: 引用 11 楼 miao十大撒撒lq 的回复:

Quote: 引用 5 楼 qq_32249721 的回复:

有道 理,我也学会了
啥地方

十大
十大a

#14


顶楼主,厉害

#15


learning~

#16


这个用spring自己的ControllerBeanNameHandlerMapping就可以解决啊

spring mvc 的映射处理器一共有4种,分别是:
ControllerBeanNameHandlerMapping、ControllerClassNameHandlerMapping、DefaultAnnotationHandlerMapping、SimpleUrlHandlerMapping
平时我们用的是DefaultAnnotationHandlerMapping,
如果想要实现你的需要,可以用ControllerBeanNameHandlerMapping

例子链接:
http://blog.csdn.net/zhang6622056/article/details/7621538