【问题标题】:Where to store request specific values in Spring MVC?Spring MVC 在哪里存储请求特定的值?
【发布时间】:2011-08-06 12:43:46
【问题描述】:

我正在使用 Spring MVC,我想将请求特定的值存储在某处,以便可以在整个请求上下文中获取它们。假设我想在我的控制器(或某种处理程序)的上下文中设置一个值,然后从 Spring 请求/响应周期的其他部分(可能是视图、视图解析器、拦截器、异常处理程序、等)...我该怎么做?

我的问题是:

Spring MVC 是否已经提供了一种方法来执行我上面描述的操作?
如果 Spring 没有这个功能,有什么想法可以做到这一点(通过扩展某些东西)?

谢谢!

【问题讨论】:

    标签: java spring spring-mvc


    【解决方案1】:

    如果你需要从你的控制器传递一个对象来查看,你可以使用 Spring 的 ModelMap。

    @RequestMapping("/list")
        public String list(ModelMap modelMap) {
                // ... do foo
    
                 modelMap.addAttribute("greeting", "hello");
    
            return viewName;
        }
    

    在你看来:

       <h1>${greeting}</h1>
    

    【讨论】:

    • 感谢您的反馈...我的问题没有很好地表达我的意思。在模型中设置值效果很好,但如果我想从 Spring 工作流的其他部分获取这些值,我该怎么办?
    【解决方案2】:

    你可以使用 sessionAttributes。

    Session Attributes

    因为你没有提到你的spring版本,所以我使用了最新版本的api(3.1)。

    【讨论】:

    • 我误解了你在问什么。如果您想让这些值可用于其他请求,请使用 sessionAttributes。
    猜你喜欢
    • 1970-01-01
    • 2012-02-09
    • 2016-04-21
    • 1970-01-01
    • 2014-04-19
    • 2010-10-07
    • 2011-06-27
    • 2023-03-12
    • 1970-01-01
    相关资源
    最近更新 更多