最近开发的时候老遇到一个问题:
http://localhost:8080/Metadata/MetaSearchEdit.do?metaSearchId=0000000000000031&metaThemeId=0000000000000021&action=operate....
类似metaSearchId、metaThemeId、action参数放在一个URL 里头特别麻烦,
而且这些参数得在多个页面来回不停的传递,稍不注意就给传丢了考虑过将它们放在session 里头或封装成一个对象放到session 或者request 里头,
那样的话一个是消耗资源,另外就是这些个参数并不全是结束会话后才让它失效,有的参数半路上就可以让它们失效,
很不同步,
不知道有没有好的解决方法?

解决方案 »

  1.   

    这些参数要是没必要保存,只是为了完成一次请求的话,可以把参数封装成一个对象,用POST方法传递请求,对象没必要放到SESSION,或REQUEST 里。
      

  2.   

    用这个:input type=hidden name="" value=""
      

  3.   

    提交页面:
    request.setAttribute("metaSearchId","0000000000000031");
    request.setAttribute("metaThemeId","0000000000000021");
    request.setAttribute("action","operate");然后在MetaSearchEdit.do:
    request.getAttribute("metaSearchId");
    request.getAttribute("metaThemeId");
    request.getAttribute("action");
      

  4.   

    这种是用get方法传,传的内容的大小是有限制,是不是超过大小了。推荐用hidden属性,在页面间传递参数
      

  5.   

    还是耐心的传吧,总比参数丢了好.
    小弟愚笨     不知道为什么参数会丢     请详细说一下好吗? 
    //使用GET方法传递参数,是把参数数据队列加到提交表单的ACTION属性所指的URL中,get传送的数据量较小,不能大于2KB。所以当你的参数过多时,会发生参数丢失的现象。
      

  6.   

    我迷糊 我是说用POST传对象 为什么会丢