铎粤语怎么读音是什么:MultiActionController与3种MethodNameResolver的配置

来源:百度文库 编辑:九乡新闻网 时间:2024/07/07 10:15:43
<> 猎头职位:上海: 上海:天会皓闻诚聘资深Java架构师
相关文章: Spring架构设计-增强MultiActionControllerMultiActionController绑定commandSpring的MultiActionController使用
推荐圈子:GT-Grid
更多相关推荐
今天又被人问了MultiActionController与MethodNameResolver的配置,就贴出来.
ParameterMethodNameResolver InternalPathMethodNameResolver PropertiesMethodNameResolver
配置web.xml
Java代码

spring

org.springframework.web.servlet.DispatcherServlet

2


spring
/spring/*

springorg.springframework.web.servlet.DispatcherServlet2spring/spring/*
定义一个Controller继承与MultiActionController
Java代码
package cn.iwoo.server.controller;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.multiaction.MultiActionController;
public class BController extends MultiActionController {
public ModelAndView doSearch(HttpServletRequest request, HttpServletResponse response) throws Exception {
System.out.println(this.getClass() + "." + "doSearch()");
return new ModelAndView("");
}
}
package cn.iwoo.server.controller;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.springframework.web.servlet.ModelAndView;import org.springframework.web.servlet.mvc.multiaction.MultiActionController;public class BController extends MultiActionController {public ModelAndView doSearch(HttpServletRequest request, HttpServletResponse response) throws Exception {System.out.println(this.getClass() + "." + "doSearch()");return new ModelAndView("");}}
方法的定义必须符合下面的格式
Java代码
public (ModelAndView | Map | String | void) actionName(HttpServletRequest request, HttpServletResponse response);
public (ModelAndView | Map | String | void) actionName(HttpServletRequest request, HttpServletResponse response);
定义ViewResolver
Java代码

org.springframework.web.servlet.view.JstlView
/WEB-INF/jsp/
.jsp

org.springframework.web.servlet.view.JstlView/WEB-INF/jsp/.jsp
定义UrlHandlerMapping
Java代码

lt;property name="urlMap">



lt;/property>


定义MethodNameResolver
一共定义了3个不同类型的MethodNameResolver.
Java代码





doSearch








/b/page.html=doSearch



doSearch/b/page.html=doSearch
定义Controller
Java代码







测试
下面是对应于不同MethodNameResolver的测试url.
http://localhost:9080/cn.iwoo/spring/b?method=doSearch http://localhost:9080/cn.iwoo/spring/b/doSearch http://localhost:9080/cn.iwoo/spring/b/page.html
注:/b/是我的controller的映射前缀,在PropertiesMethodNameResolver的mappings配置里面,网址必须是/b/开头,也就是controller的前缀也需要写进去. 这是我测试的结果,不知是否必须这样.
以上代码测试过,可用.