使用SpringMvc框架,在訪問ControllerA的時候,將A里面的參數傳遞到ControllerB中.適用於同一框架下兩個不同Controller或者由rpc(dubbo)連接的兩個工程里的Controller.我總結了兩個方法:
將ControllerA的數據傳到一個jsp的容器中保存,在由jsp將數據提交到ControllerB中獲取.
ControllerA代碼:
@RequestMapping("/ControllerA")
public String A(Model model){
model.addAttribute("param", "需要傳遞的參數");
return "index";
}
index.jsp代碼:
<body>
</script>
<form action="ControllerB" method="post">
<input type="hidden" value="${param }">
</form>
<script>
document.forms[0].submit();
</script>
</body>
ControllerB代碼:
@RequestMapping("/ControllerB")
public void B(Model model@RequestParam(value="param",required=true)String param){
//得到了Controller中參數的值
}
還有一種方法可以在Controller間傳遞參數,用不到jsp.
ControllerA代碼:
@RequestMapping("/ControllerA")
public String A(Model model){
model.addAttribute("param", "需要傳遞的參數");
return "redirect:ControllerB";
}
ControllerB代碼:
@RequestMapping("/ControllerB")
public void B(Model model@RequestParam(value="param",required=true)String param){
//得到了Controller中參數的值
}
下面的方法,最后ControllerA是通過GET方式傳值的.當然還有其他方式傳值,比如用session也可以.