通俗一点,现在的很多web网站的分页显示数据问题,进行如下操作:
点击下一页,显示第二页内容,然后点击相关单条内容编辑,跳转一次action然后到编辑页面,编辑完成后,点击提交按钮,跳转一次action,回到未编辑前的当前显示的第二页的内容的页面。
问题出来了,如何保证该参数经过2次action后不丢失呢,可以在struts2配置文件中设置参数传递,但是这样每个配置文件中的action岂不是都要设置一遍,各位大神有没更好的方法呢,不胜感激!actionstrutsweb
点击下一页,显示第二页内容,然后点击相关单条内容编辑,跳转一次action然后到编辑页面,编辑完成后,点击提交按钮,跳转一次action,回到未编辑前的当前显示的第二页的内容的页面。
问题出来了,如何保证该参数经过2次action后不丢失呢,可以在struts2配置文件中设置参数传递,但是这样每个配置文件中的action岂不是都要设置一遍,各位大神有没更好的方法呢,不胜感激!actionstrutsweb
<interceptor-ref name="paramsPrepareParamsStack"/>
<interceptor-ref name="store">
<param name="operationMode">AUTOMATIC</param>
</interceptor-ref>
</interceptor-stack>
最差的一种,写在隐藏域或者写在请求连接后,因为会把信息直接暴露给客户端,所以虽然使用方便但是不被推荐。
好一些的,是存在客户端cookie中,因为每次需要到客户端进行文件io操作同时需要传输到服务端进行使用,所以读存效率和传输效率受客户端限制过大,难以保证。
最好的就是存于服务端,一般有两种方式:存在session里,这个就是一个常用解决方案,效率没什么问题,但是要注意存储量的问题,因为session是存储于内存中,所以如果是大数据量存储会过于消耗服务端资源,这种情况下,就序列化后存到数据库中,也就是数据存储于服务端的第二种方式。