2011-05-04 35 views
1

在Web应用程序中,我们经常遇到跨越多个页面的表单提交过程,例如:在第一个表单中我们捕获基本信息,在下一个页面捕获其他一些信息等等。我有一个场景,我有7个屏幕来捕获有关用户的所有细节,并在第7页上出现“提交”按钮。存储中间表单数据

通常我们将所有的中间值存储在HttpSession中,当它提交时,我们检索Session中的所有值并在数据库中创建一个条目。

通过这种方法,在用户完成所有表单条目(即从第1页到第7页)时,所有内容都驻留在Session中。

我想知道,除了存储中间值的HttpSession之外,还有其他的选择吗?

我实际上试图找到让我的HttpSession更轻松的方法。

回答

2

您也可以在会话中只存储引用,然后映射到缓存中,例如, Memcached。或者,如果在用户完成步骤时不丢失数据非常重要,则还可以将数据保存在数据库中,并只通过会话中的密钥来引用它。要在会话中存储太多数据有时不是最好的选择,所以我只在那里存储参考。