拦截会话创建spring mvc

时间:2012-10-19 09:09:43

标签: java spring-mvc

我试图在我的视图中有一些对象,但我不想在我的Controller中的每个方法中重复/包含代码,所以我想把这个对象放在一个会话中。

这种方式可以在视图中使用,我不会重复代码。

所以我的问题是如何拦截表单创建并为每个创建的会话设置一些对象?

1 个答案:

答案 0 :(得分:0)

如果要为所有控制器方法提供一些数据/对象,最好将它放在控制器方法级别的Model中(使用@ModelAttribute)。示例如下:

@Controller
public class MyController{

    @ModelAttribute
    public void getEmpRoles(Model model) {
        List<String> roles = myservice.loadEmpRoles();
        model.addAttribute(roles);
    }

    @RequestMapping(...)
    public String m1(Model model){
        // You roles model is available here
    }
}

请参阅Spring doc(http://bit.ly/JCutg2)以了解有关方法级别的@ModelAttribute的更多信息