zoukankan      html  css  js  c++  java
  • 访问平台Servlet时,如何设置超时时间

    转载:https://blog.csdn.net/smshuxue/article/details/17194803

    需要的jar包:commons-httpclient-3.1.jar,commons-logging-1.0.4.jar,commons-codec-1.2.jar。在大地财险测试通过。

    代码如下所示:

    package cn.com.sinosoft.test.http;
    
    import org.apache.commons.httpclient.HostConfiguration;
    import org.apache.commons.httpclient.HttpClient;
    import org.apache.commons.httpclient.HttpStatus;
    import org.apache.commons.httpclient.methods.PostMethod;
    import org.apache.commons.httpclient.methods.StringRequestEntity;
    import org.apache.commons.httpclient.params.HttpConnectionManagerParams;
    
    public class PostSample {
     public static void main(String[] args) {
      HttpClient httpClient = new HttpClient();
      // 设置代理
      // HostConfiguration hcf = new HostConfiguration();
      // hcf.setProxy("localhost", 8118);
      // httpClient.setHostConfiguration(hcf);
    
      HttpConnectionManagerParams managerParams = httpClient
        .getHttpConnectionManager().getParams();
      // 设置连接超时时间(单位毫秒)
      managerParams.setConnectionTimeout(30000);
      // 设置读数据超时时间(单位毫秒)
      managerParams.setSoTimeout(120000);
    
      String url = "http://localhost/testweb/commserver";
      PostMethod postMethod = new PostMethod(url);
    
      // 将请求参数XML的值放入postMethod中
      String strResponse = null;
      try {
       postMethod.setRequestEntity(new StringRequestEntity(
         createRequestXML(), "text/xml", "GBK"));
       int statusCode = httpClient.executeMethod(postMethod);
       if (statusCode != HttpStatus.SC_OK) {
        throw new IllegalStateException("Method failed: "
          + postMethod.getStatusLine());
       }
       strResponse = postMethod.getResponseBodyAsString();
      } catch (Exception ex) {
       throw new IllegalStateException(ex.toString());
      } finally {
       // 释放连接
       postMethod.releaseConnection();
      }
      System.out.println(strResponse);
    
     }
    
     public static String createRequestXML() {
      StringBuffer buffer = new StringBuffer();
      buffer.append("<?xml version=/"1.0/" encoding=/"GBK/"?>");
      buffer.append("<PACKET>");
      buffer.append("<HEAD>");
      buffer.append("<REQUEST_TYPE>01</REQUEST_TYPE>");
      buffer.append("</HEAD>");
      buffer.append("</PACKET>");
      return buffer.toString();
    
     }
    }
    
  • 相关阅读:
    less-循环写法
    利用IntersectionObserver完成懒加载、加载更多
    通过is切换组件
    css3-背景渐变
    css-六边形、平行四边形、扇形实现
    vue-利用递归组件完成一个树形组件
    event loop 事件循环
    vue-组件间通信
    video 背景图平铺
    JS 事件委托
  • 原文地址:https://www.cnblogs.com/mybatis/p/9376045.html
Copyright © 2011-2022 走看看