首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在spring-mvc中如何向重定向页面传递参数

问在spring-mvc中如何向重定向页面传递参数
EN

Stack Overflow用户
提问于 2013-10-08 21:29:05
回答 1查看 34.5K关注 0票数 8

我写了下面的控制器:

代码语言:javascript
复制
@RequestMapping(value="/logOut", method = RequestMethod.GET )
    public String logOut(Model model, RedirectAttributes redirectAttributes)  {
        redirectAttributes.addFlashAttribute("message", "success logout");
        System.out.println("/logOut");
        return "redirect:home.jsp";
    }

如何将home.jsp页上的代码更改为可以编写${message}和查看"success logout"

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-08 22:21:41

当返回值包含redirect:前缀时,viewResolver将其识别为需要重定向的特殊指示。视图名称的其余部分将被视为重定向URL。并且客户端将向该redirect URL发送新的请求。因此,您需要有一个映射到此URL的处理程序方法来处理重定向请求。

您可以像这样编写处理程序方法来处理重定向请求:

代码语言:javascript
复制
@RequestMapping(value="/home", method = RequestMethod.GET )
public String showHomePage()  {
    return "home";
}

您可以重写logOut处理程序方法,如下所示:

代码语言:javascript
复制
@RequestMapping(value="/logOut", method = RequestMethod.POST )
public String logOut(Model model, RedirectAttributes redirectAttributes)  {
    redirectAttributes.addFlashAttribute("message", "success logout");
    System.out.println("/logOut");
    return "redirect:/home";
}

编辑:

您可以在应用程序配置文件中使用以下条目来避免使用showHomePage方法:

代码语言:javascript
复制
<beans xmlns:mvc="http://www.springframework.org/schema/mvc"
 .....
 xsi:schemaLocation="...
 http://www.springframework.org/schema/mvc
 http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
 ....>

<mvc:view-controller path="/home" view-name="home" />
 ....
</beans>

这将把对/home的请求转发到一个名为home的视图。如果在视图生成响应之前没有要执行的Java控制器逻辑,那么这种方法是合适的。

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19249049

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档