快速业务通道

Java网络编程从入门到精通(14):多种多样的建立网络连接的方式 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-21
             }              catch (Exception e) { }      }      public static void main(String[] args)      {          Socket socket1 = null, socket2 = null, socket3 = null, socket4 = null;          try          {              // 如果将www.ptpress.com.cn改成其它不存在的域名,将抛出UnknownHostException错误              // 测试public Socket(String host, int port)              socket1 = new Socket("www.ptpress.com.cn", 80);              System.out.println("socket1连接成功!");              // 测试public Socket(InetAddress inetaddress, int port)              socket2 = new Socket(InetAddress.getByName("www.ptpress.com.cn"), 80);              System.out.println("socket2连接成功!");              // 下面的两种建立连接的方式并不建议使用              // 测试public Socket(String host, int port, boolean stream)              socket3 = new Socket("www.ptpress.com.cn", 80, false);              System.out.println("socket3连接成功!");              // 测试public Socket(InetAddress inetaddress, int i, boolean flag)              socket4 = new Socket(InetAddress.getByName("www.ptpress.com.cn"), 80, false);              System.out.println("socket4连接成功!");          }          catch (UnknownHostException e)          {              System.out.println("UnknownHostException 被抛出!");          }          catch (IOException e)          {              System.out.println("IOException 被抛出!");          }          finally          {              closeSocket(socket1);              closeSocket(socket2);              closeSocket(socket3);              closeSocket(socket4);          }      } }

Java网络编程从入门到精通(14):多种多样的建立网络连接的方式(2)

时间:2011-01-12

在上面代码中的最后通过finally关闭了被打开的Socket连接,这是一个好习惯。因为只有在将关闭Socket连接的代码写在finally里,无论是否出错,都会执行这些代码。但要注意,在关闭Socket连接之前,必须检查Socket对象是否为null,这是因为错误很可能在建立连接时发生,这样Socket对象就没有建立成功,也就用不着关闭了。

1.手动绑定IP

当本机有多个IP时(这些IP可能是多块网卡上的,也可能是一块网卡上绑定的多个IP),在连接服务器时需要由客户端确定需要使用哪个IP.这样就必须使用Socket类的另外两个构方法来处理。下面让我们来看看这两个构造方法是如何来使用特定的IP来连接服务器的。

public Socket(String host, int port, InetAddress inetaddress, int localPort)

这个构造方法的参数分为两部分,第一部分为前两个参数:host和port,它们分别表示要连接的服务器的IP和端口号。第二部分为后两个参数:inetad

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号