【发布时间】:2013-01-19 03:36:18
【问题描述】:
我有几个场景,其中 servlet 需要从数据库中检索到的记录将数据传递给 JSP 中的表单。目前,我将这些信息存储在请求中,使用 RequestDispatcher 转发到页面,一切都很好。
然而,这不符合 PRG 模式 (AFAIK),当然意味着刷新生成的 JSP 意味着重新运行 servlet,这是不可取的。
我当然可以将这些值存储在会话中,但这意味着之后会清除它们,甚至使用会话来显示数据库中的记录似乎有点小技巧。
我只是想知道在这种情况下最佳做法是什么?我应该继续使用请求、使用会话还是其他一些技术?
提前致谢。
编辑: 在阅读了几篇文章和堆栈溢出答案之后,我找不到在将数据从 servlet 传递到 JSP 时使用请求和调度程序之外的任何其他选项。这对我来说似乎不对,但会议也不对。任何人都可以对此有所了解吗?
【问题讨论】:
-
谢谢阿布,它确实有点。唯一的问题是,我没有遇到重复的情况;任何提交数据以存储在数据库中的 servlet,我当然会使用 GET 和第二个 servlet。但我要问的是第二个 servlet,它仍然必须使用请求调度程序才能最终将信息显示回页面上。我只是想知道这是否是最佳做法?那里提供的答案表明它是,但我想在继续使用它之前确认。谢谢
-
如果您对与在重定向/转发到 JSP 页面时存储某些日期相关的不同场景感兴趣,那么也许您会发现这个答案有些帮助:stackoverflow.com/a/14638621/814702
-
@informatik01 太棒了,谢谢。这与 JB 的回答一起,准确地告诉了我我需要知道的内容。
标签: java servlets redirect scope post-redirect-get