java使用HTTPURLCONNECTION调用SOAP接口如何处理返回参数过大的问题

我是使用了httpurlconncetion的对象调用了soap接口,然后发现在接收接口返回参数时,如果数据过大(我是通过输出流获取最后用String类型接收处理的,大概在2000000字节以上就是会卡死或是执行时间无限延长),因为是公司内部,所以不方便截图,希望各位大神能提供一个案例或者思路

试试下面两种思路

    可以分批次请求,一次返回一部分。 一般来说10M以内都是可以接受

    服务器端返回一个文件,客户端直接接受文件。(这里接受文件肯定要用流的形式,不能用byte数组)

追问

你说的分批次以考虑过,但是接口提供方暂时不会提供分批次形式的数据返回,所以。
然后我在后台也是通过inputstream来接收的然后用bufferread读取转换的 请问还有什么其他好办法 处理流吗?

追答

没有了,大数据只能落地成文件,然后以流的形式读写,否则只要涉及到全部读取都是比较占内存的

追问

用流的形式读取之后 如果还要继续操作,该怎么办 例如解析xml持久化数据

追答

解析xml,使用sax解析。

追问

辛苦了 虽然并没有完全解决

温馨提示:答案为网友推荐,仅供参考
相似回答