客户端使用post提交,其中一个参数是批量的SQL语句,因为经常有2000条左右的sql语句,使这个参数很大,导致服务器端的jsp接受时需要很长时间,经测试,1600多条的SQL语句,jsp需要6分多钟才能接收完毕,请问大家,如何提高效率?

解决方案 »

  1.   

    不明白你为什么sql也要通过request请求来处理,感觉只需要在form提交的时候把动态的参数传入服务器段,然后生成的sql由持久层进行处理。这样安全又保障
      

  2.   

    同意楼上所说你可以传入需要的参数在from 或bean中组合SQL语句
      

  3.   

    你不会吧???sql语句干嘛要通过request提交呢,request通常是提交一些用户输入信息,servlet或者strutsAction处理后,转由后台bean生成sql对数据库进行操作
      

  4.   

    页面参数过大,可以考虑在form中加入ENCTYPE="multipart/form-data"中加入属性,这样网络传输会把参数分割成几个包,速度会有很大改善
      

  5.   

    谢谢大家的回复。
    因为客户端必需要传SQL语句,没有别的办法。
    我想在客端将SQL语句字符串用压缩为zip格式,然后传到jsp,jsp再解压后处理,这种方法不知是否可行,正在研究,大家有这方面的经验请介绍一下,谢谢。
      

  6.   

    在客户端post压缩后的数据,好象可以通过设置Content-Encoding来解决,大家用没用过,是否可以这样使用?
      

  7.   

    通过底层socket传输数据,将数据打包,发送端用代码去监听数据的发送。在接受端去接受。
    给个思路(可行的,前段时间写过)。代码自己去实现。
    做人要厚道,结贴给分哈
      

  8.   

    jsp传条件 在 servlet中组SQL 完成查询后把结果返回给JSP
      

  9.   

    不是查询,而是一些insert、update、delete语句
      

  10.   

    传入需要的参数在from 或bean中组合SQL语句
      

  11.   

    就算只传数据也非常大,所以重新组合sql也不会提高速度.