java - 如何显示/处理成功/失败错误消息

标签 java spring spring-mvc model-view-controller

假设一个 View 包含一个用户列表和一个指向另一个 View 的链接,该 View 包含一个用于将新用户添加到列表中的表单。您填写表格,然后单击提交。然后服务器收到该请求并尝试将记录插入数据库。这可能是成功的,也可能是失败的。在这两种情况下,您都会被重定向到带有用户列表的主视图。然后在用户列表中显示成功/失败消息。

此刻,当我完成数据库事务时,我使用保存消息的请求参数将用户重定向到主视图。主视图获取该消息,如果它不为空,则显示该消息。

虽然这可行,但它有一些缺点。例如,如果用户重新加载 View ,消息仍会弹出。所以我确定这不是解决问题的方法。

有更多的可能性可以做同样的事情,但我想知道实现这一点的最常见方法是什么(保存在 session 中,请求属性而不是请求参数......,以及如何处理消息一次显示。

感谢您的帮助!

最佳答案

可以在重定向之前添加一个 flash 属性:

1) 添加 RedirectAttributes redirectAttrs 到方法签名 2) 在重定向之前调用 redirectAttrs.addFlashAttribute() 添加您的消息

参见 example in spring docs here , PetClinic app中也有例子

关于java - 如何显示/处理成功/失败错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21705432/

相关文章:

java - 将 MP4 文件添加到 JPanel 并缩放它 - Java

java - Spring Boot 中的子 Controller

java - 找到多组对象的最佳匹配的算法

spring - Spring MVC 3.1 中的 Flash 属性对重定向 JSP 不可见

java - 当 ftp 站点未连接时 GUI 被卡住

java - 为什么我在 Spring 中提交表单后得到 null 对象?

java - 加载 applicationContext 时出现 FileNotFound 异常

javascript - 类型错误 : result is null when subscribing to a post request

java - 从 spring mvc 中的 View 中从选定的 session ID 注销

spring-mvc - Spring MVC : How to resolve the path to subdirectories of the root 'JSP' folder in a web application