您的位置:首页 > 理论基础 > 计算机网络

《java网络的基本知识》

2011-11-08 13:30 246 查看
 java网络的基本知识
1、使用URL(统一资源定位)

例如:

try

{

url=new URL("http://www.sina.com.cn";

}

catch(MalformedURLException e)

{

System.out.println("Bad URL:"+url);

}

在Applet 中链接向另外的Web页面,使用代码:

getAppletContext().showDocument(url);

2、套接字

客户建立到服务器的套接字(Socket)

Socket(String host,int port) host是服务器的IP地址,port是端口号

建立了套接字后可以使用getInputStream()获得输入流

还可以使用getOutputStream()获得一个输出流

服务器建立接受客户套接字的服务器套接字(ServerSocket)

ServerSocket(int port) port是端口号

建立了套接字连接后可以使用accept()接收客户的套接字

可以使用getOutputStream()获得一个输出流

还可以使用getInputStream()获得一个输入流

3、InetAddress类

getByName(String )

3、InetAddress类

getByName(String s) 获取Internet上主机的地址

getHostName() 获取InetAddress对象所包含的域名

getHostAddress() 获取InetAddress对象所包含的IP地址

getLocalHost() 获取本地地址

4、UDP数据报

发送数据包,即使用DatagramPacket类将数据打包,有两种构造方法

DatagramPacket(byte data[],int length,InetAddress address,int port)

?含有data数组的数据

?该数据包将发送到地质是address,端口是port的主机上

DatagramPacket(byte data[],int offset,int length,InetAddress address,int port)

?含有data数组的从offset开始,length长度的数据

?该数据包将发送到地质是address,端口是port的主机上

接收数据包,即使用DatagramSocket(int port)创建一个对象,port必须和待接收的数据包的端口相同

例如:

如果发送方的数据包端口是5566

DatagramSocket mail=new DatagramSocket(5566);

然后对象mail可以使用方法receive(Datagrampacket pack)接收数据包

在使用参数pack 接收数据包前,必须创建pack

byte data[]=new byte[100];

int length=90;

DatagramPacket pack=new DatagramPataet(data,length);

mail.receive(pack);

该数据包pack将接收长度是length的数据放入data,注意数据长度不要超过8192KB

pack还可以调用方法getPort()获取所接受数据包是从什么端口发出的

调用方法InetAddress getAddress()可以获知数据包来自哪个主机
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息