在Spring MVC中,可以使用@ModelAttribute
注解来实现不同控制器的视图之间共享modelAttribute
。
以下是一个示例代码:
modelAttribute
对象:public class SharedModelAttribute {
private String sharedData;
public String getSharedData() {
return sharedData;
}
public void setSharedData(String sharedData) {
this.sharedData = sharedData;
}
}
@ModelAttribute
注解将该对象添加到模型中:@Controller
public class Controller1 {
@ModelAttribute("sharedModelAttribute")
public SharedModelAttribute sharedModelAttribute() {
return new SharedModelAttribute();
}
// 其他控制器方法
}
@Controller
public class Controller2 {
@ModelAttribute("sharedModelAttribute")
public SharedModelAttribute sharedModelAttribute() {
return new SharedModelAttribute();
}
// 其他控制器方法
}
modelAttribute
对象:
${sharedModelAttribute.sharedData}
在上面的示例中,我们创建了一个共享的SharedModelAttribute
对象,并在每个控制器中使用@ModelAttribute
注解将其添加到模型中。在视图中,可以通过${sharedModelAttribute.sharedData}
来访问共享的属性。无论是JSP还是Thymeleaf,都可以使用这种方式来访问共享的modelAttribute
对象。
下一篇:不同控制器动作的一个路由