Java如何设置代理ip

Java如何设置代理ip

第一种,直接在JVM中设置:

  /JVM设置代理/

  System.getProperties).setProperty”http.proxyHost”, ip);

  System.getProperties).setProperty”http.proxyPort”, “80”);

  这种设置的优势 :快捷方便,且由于是JVM级别的设置,可以对整个项目起作用。当然这种设置方法有一个明显的劣势:当代理ip不可用时,会直接调用本地网络来进行连接。这个问题在很多使用场景中是非常致命的。

第二种,使用SocketAddress网络代理:

  SocketAddress addr = new InetSocketAddresshost, Integer.parseIntport));

  Proxy proxy = new ProxyProxy.Type.HTTP, addr);

  try{

  URL url = new URL”http://www.baidu.com“);

  URLConnection conn = url.openConnectionproxy);

  conn.setConnectTimeout5000);

  conn.setRequestProperty”User-Agent”,”Mozilla/4.0 compatible; MSIE 7.0; NT 5.1; GTB5; .NET CLR 2.0.50727; CIBA)”);

  conn.getContent);

  }catch Exception e) {

  e.printStackTrace);

  }

这种办法的优势是,在代理连接发生错误时,会抛出异常而并不是使用本地的连接继续访问。而劣势也很明显,你需要为每一次连接创建一个代理对象。

欢迎一起来学习和指导,谢谢关注!

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注