代理服务器java代理服务器设置方法

代理服务器设置  时间:2021-04-09  阅读:()

java代理服务器设置方法

在Java中使用proxy是通过设置java环境变量来实现的也就是JVM的系统属性。我们需要设置三个属性 proxySetproxyHost和proxyPort。proxySet是个boolean类型的可以设置为true或者false true代表使用代理服务器。 proxyHost是代理服务器的IP地址p roxy Po rt是代理服务器的端口地址。

我们有两种方法设置这种系统属性

一种是命令行下运行Java程序的时候通过参数付值

一种是在java源程序中设置。

第一种方法的格式如下java-DproxySet=true-DproxyHost=myProxyServer.come-DproxyPort=80MyJavaApp第二种方法就是直接在源程序中通过系统属性来写如下importjava.uti l .Properties;

. . .

. . .strProxy="221.15.5.67";strPort="8080";

PropertiessystemProperties=System.getProperties;systemProperties.setProperty;systemProperties.setProperty;

JDK1.3以上版本只要设置了proxyHost和proxyPort就不用写proxySet了。下面是一个完整的例子strUrl="http://blog.csdn.net/cqq/";

URLurl=newURL;

URLConnectionconn=url .openConnection;strProxy="221.15.5.67";strPort="8080";

PropertiessystemProperties=System.getProperties;systemProperties.setProperty;systemProperties.setProperty;

BufferedReaderrd=newBufferedReader));whi le) !=nul l)rd.close;

17.5.2使用ProxySel ector选择代理服务器

前面介绍的直接使用Proxy对象可以在打开U RLConnection或Socket时指定代理服务器使用这种方式需要每次打开连接都显式设置代理服务器。如果想让系统打开连接时总是具有默认的代理服务器则可以使用java.net.ProxySel ector它可以它根据不同的连接使用不同的代理服务器。

系统默认的ProxySelector会检测各种系统属性和URL协议然后决定怎样连接不同的主机。当然程序也可以调用ProxySelector类的setDefaultI()静态方法来设置默认代理服务器也可以调用getDefault()方法获得系统当

前默认的代理服务器。

程序可以通过System类来设置系统的代理服务器属性关于代理服务器常用的属性名有如下三个http.proxyHost设置HTTP访问所使用的代理服务器地址。该属性名的前缀可以改为https、 ftp等分别用于设置HTTP访问、安全HTTP访问和FTP访问所用的代理服务器地址。http.proxyPort设置HTTP访问所使用的代理服务器端口。该属性名的前缀可以改为https、 ftp等分别用于设置HTTP访问、安全HTTP访问和FTP访问所用的代理服务器端口。http.nonProxyHosts设置HTTP访问中不需要使用代理服务器的远程主机可以使用*通配符如果有多个地址多个地址用竖线 | 分隔。

下面程序示范了通过改变系统属性来改变默认的代理服务器。

程序清单 codes/17/17-5/ProxySelectorTest.java

上面程序中三行粗体字代码设置Java打开HTTP访问时的代理服务器属性其中前两行代码设置代理服务器的地址和端口第三行代码设置该代理HTTP访问哪些主机时不需要使用代理服务器。上面程序的①行代码处直接打开一个URLConnection但系统会为打开该URLConnection时使用代理服务器。

运行上面程序将会看到程序长时间等待 因为192.168.0.96通常并不是有效的代理服务器当然如果读者运行的机器恰好可以使用地址为

192.168.0.96的代理服务器又另当别论。

系统提供了默认的ProxySel ector子类作为代理选择器开发者可以实

现自己的代理选择器程序可以通过继承ProxySelector来实现自己的代理选择器。继承ProxySelector需要重写两个方法

List<Proxy>select(U RIuri) 实现该方法让代理选择器根据不同的URI来使用不同的代理服务器该方法就是代理选择器管理网络连接使用代理服务器的关键。connectFai led(URIuri,SocketAddresssa,IOExceptionioe) 当系统通过默认的代理服务器建立连接失败后代理选择器将会自动调用该方法。通过重写该方法可以对连接代理服务器失败的情形进行处理。

系统默认的代理服务器选择器也重写了connectFai led方法它重写该方法的处理策略是 当系统设置的代理服务器失败时默认代理选择器将会采用直连的方式连接远程资源所以当运行上面程序等待了足够长时间时程序依然可以打印出该远程资源的所有内容。

热网互联33元/月,香港/日本/洛杉矶/韩国CN2高速线路云主机

热网互联怎么样?热网互联(hotiis)是随客云计算(Suike.Cloud)成立于2009年,增值电信业务经营许可证:B1-20203716)旗下平台。热网互联云主机是CN2高速回国线路,香港/日本/洛杉矶/韩国CN2高速线路云主机,最低33元/月;热网互联国内BGP高防服务器,香港服务器,日本服务器全线活动中,大量七五折来袭!点击进入:热网互联官方网站地址热网互联香港/日本/洛杉矶/韩国cn2...

Atcloud:全场8折优惠,美国/加拿大/英国/法国/德国/新加坡vps,500g大硬盘/2T流量/480G高防vps,$4/月

atcloud怎么样?atcloud刚刚发布了最新的8折优惠码,该商家主要提供常规cloud(VPS)和storage(大硬盘存储)系列VPS,其数据中心分布在美国(俄勒冈、弗吉尼亚)、加拿大、英国、法国、德国、新加坡,所有VPS默认提供480Gbps的超高DDoS防御。Atcloud高防VPS。atcloud.net,2020年成立,主要提供基于KVM虚拟架构的VPS、只能DNS解析、域名、SS...

Megalayer(48元)新增 美国CN2优化线路特价服务器和VPS方案

Megalayer 商家算是新晋的服务商,商家才开始的时候主要是以香港、美国独立服务器。后来有新增菲律宾机房,包括有VPS云服务器、独立服务器、站群服务器等产品。线路上有CN2优化带宽、全向带宽和国际带宽,这里有看到商家的特价方案有增加至9个,之前是四个的。在这篇文章中,我来整理看看。第一、香港服务器系列这里香港服务器会根据带宽的不同区别。我这里将香港机房的都整理到一个系列里。核心内存硬盘IP带宽...

代理服务器设置为你推荐
设置在线代理客户flash安顺网易yeah现有新的ios更新可用请从ios14be苹果手机更新不了最新14系统是怎么回事?asp.net什么叫ASP.NET?filezillaserverfilezilla server interface怎么填yixingjia通配符的使用方法腾讯公司电话腾讯公司总部电话多少厦门三五互联科技股份有限公司厦门三五互联科技股份有限公司怎么样?可信网站可信网站认证一定要办吗
cn域名价格 新通用顶级域名 免费cn域名 唯品秀 香港服务器99idc webhosting 标准机柜尺寸 免费mysql supercache 黑科云 cx域名 侦探online 服务器是什么 9929 国内免备案空间 百度空间登陆首页 hp存储服务器 服务器操作系统安装 厦门电信网上营业厅 789艺术区 更多