我在成功或显示某些类型的CRUD操作(CREATE,DELETE等)失败后显示消息时遇到一些问题。我曾尝试使用Redirect Flash属性,虽然我发现没有运气,但我根本无法显示消息。例如,我在Controller方法中声明了类似的内容:
public String DeleteAction(Model model, Object object, @RequestParam int id, RedirectAttributes attributes) {
// Method logic
object.delete(id);
attributes.addFlashAttribute("success", "Object has been removed successfully.");
return "index"; // View resolver redirect
}
这是我的一个控制器中我的函数的一个例子,我声明要将flash属性绑定到视图。我在.jsp ${success}
中调用了这样的flash属性,虽然我仍然无法显示它。我有什么遗漏不能使它起作用吗?
答案 0 :(得分:3)
Model
接口的特化,controllers
可用于为重定向方案选择属性。由于添加redirect attributes
的意图非常明确 - 即用于redirect URL
。
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public String DeleteAction(Model model, Object object, @RequestParam int id RedirectAttributes attributes) {
object.delete(id);
attributes.addFlashAttribute("success", "Object has been removed successfully.");
return "redirect:" + "index";
}