您的位置:首页 >新闻资讯

JAVA怎么使用代理IP

来源:本站 作者:admin 时间:2019-06-13 17:21:12

JAVA,一种编程语言,代理IP,网络信息的中转站,当两者碰到一起会有什么反应呢?今天这里就为大家说一下,JAVA怎么使用代理IP。


 JAVA怎么使用代理IP


有两种方法,简单说一下优劣

 

一个是直接在JVM中设置,

 

System.getProperties().setProperty("http.proxyHost", ip);

 

System.getProperties().setProperty("http.proxyPort", "80");

 

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

 

另一个是使用SocketAddress网络代理

 

SocketAddress addr=new InetSocketAddress(host, Integer.parseInt(port));

 

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

 

try{

 

URL url=new URL("http://www.baidu.com");

 

URLConnection conn=url.openConnection(proxy);

 

conn.setConnectTimeout(5000);

 

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();

 

}

 

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

 

两种方法介绍完毕,根据优劣自行选择,总有一个适合你。

相关文章内容简介
推荐阅读