//HttpServletRequest pRequest pStream = request.getInputStream();
         final XMLReader xr = SAXParsers.newXMLReader();
xr.setContentHandler(parser);
try {
InputStream pStreamCopy = new InputStream(pStream);
xr.parse(new InputSource(pStream));  // 局域网访问的情况很慢
} catch (SAXException e) {XMLReader 对HTTP请求HttpServletRequest的pStream = request.getInputStream()进行解析时,超级慢,要二百多毫秒左右请问
1.怎么才能让xr.parse(new InputSource(pStream));  变快?2.我以为是局域网访问,流pStream也是局域网的,所以解析慢,想把它转成本地流,再进行解析能快点,但怎么转成本地流呢?3.转成本地流时,会不会也很慢?跪求大牛帮忙

解决方案 »

  1.   

    InputStream pStreamCopy = new InputStream(pStream);
    可以这样用么……
    这样吧,我觉得反正直接用http来读这个InputStream肯定不慢,独到一个byte数组里,然后用ByteArrayInputStream来封装读本地内存应该就可以了
      

  2.   

    感谢楼上
    首先 InputStream pStreamCopy = new InputStream(pStream);编译不过,没有这样的InputStream构造方法
    其次
    经测试,主要是读byte数组慢,如pStream .read(bytes);是不是没办法啊。。