第十章JAVA网络编程.docx
- 文档编号:11665396
- 上传时间:2023-03-29
- 格式:DOCX
- 页数:12
- 大小:1.80MB
第十章JAVA网络编程.docx
《第十章JAVA网络编程.docx》由会员分享,可在线阅读,更多相关《第十章JAVA网络编程.docx(12页珍藏版)》请在冰豆网上搜索。
第十章JAVA网络编程
《TCP/IP详解》
端口号占个字节,65536个端口
1024以上的端口,自己用的端口号
端口号分为TCP和UDP分开的,每一个65536个端口。
//Server端
import.*;
importjava.io.*;
publicclassTCPServer{
publicstaticvoidmain(String[]args)throwsException{
ServerSocketss=newServerSocket(6666);
while(true){
Sockets=ss.accept();//阻塞式
System.out.println("aclientconnect!
");
DataInputStreamdis=newDataInputStream(s.getInputStream());
System.out.println(dis.readUTF());//阻塞式
dis.close();
s.close();
}
}
}
//Client端
import.*;
importjava.io.*;
publicclassTCPClient{
publicstaticvoidmain(String[]args)throwsException{
Sockets=newSocket("127.0.0.1",6666);
OutputStreamos=s.getOutputStream();
DataOutputStreamdos=newDataOutputStream(os);
Thread.sleep(30000);
dos.writeUTF("helloserver!
");
dos.flush();
dos.close();
s.close();
}
}
/*范例名称:
简单的client/server程序
*源文件名称:
TestClient.java/TestServer.java
*要点:
*1.JavaSocket编程步骤
*2.Socket/ServerSocket类用法
*3.通过Socket对象可以获取通信对方Socket的信息
*/
import.*;
importjava.io.*;
publicclassTestServer{
publicstaticvoidmain(Stringargs[]){
try{
ServerSockets=newServerSocket(8888);
while(true){
Sockets1=s.accept();
OutputStreamos=s1.getOutputStream();
DataOutputStreamdos=newDataOutputStream(os);
dos.writeUTF("Hello,"+s1.getInetAddress()+
"port#"+s1.getPort()+"bye-bye!
");
dos.close();
s1.close();
}
}catch(IOExceptione){
e.printStackTrace();
System.out.println("程序运行出错:
"+e);
}
}
}
/*范例名称:
简单的client/server程序
*源文件名称:
TestClient.java/TestServer.java
*要点:
*1.JavaSocket编程步骤
*2.Socket/ServerSocket类用法
*3.通过Socket对象可以获取通信对方Socket的信息
*/
import.*;
importjava.io.*;
publicclassTestClient{
publicstaticvoidmain(Stringargs[]){
try{
Sockets1=newSocket("127.0.0.1",8888);
InputStreamis=s1.getInputStream();
DataInputStreamdis=newDataInputStream(is);
System.out.println(dis.readUTF());
dis.close();
s1.close();
}catch(ConnectExceptionconnExc){
connExc.printStackTrace();
System.err.println("服务器连接失败!
");
}catch(IOExceptione){
e.printStackTrace();
}
}
}
//****************************************************************************
importjava.io.*;
import.*;
publicclassTestSockServer{
publicstaticvoidmain(String[]args){
InputStreamin=null;
OutputStreamout=null;
try{
ServerSocketss=newServerSocket(5888);
Socketsocket=ss.accept();
in=socket.getInputStream();
out=socket.getOutputStream();
DataOutputStreamdos=newDataOutputStream(out);
DataInputStreamdis=newDataInputStream(in);
Strings=null;
if((s=dis.readUTF())!
=null){
System.out.println(s);
System.out.println("from:
"+socket.getInetAddress());
System.out.println("Port:
"+socket.getPort());
}
dos.writeUTF("hi,hello");
dis.close();
dos.close();
socket.close();
}catch(IOExceptione){e.printStackTrace();}
}
}
//****************************************************************************
import.*;
importjava.io.*;
publicclassTestSockClient{
publicstaticvoidmain(String[]args){
InputStreamis=null;OutputStreamos=null;
try{
Socketsocket=newSocket("localhost",5888);
is=socket.getInputStream();
os=socket.getOutputStream();
DataInputStreamdis=newDataInputStream(is);
DataOutputStreamdos=newDataOutputStream(os);
dos.writeUTF("hey");
Strings=null;
if((s=dis.readUTF())!
=null);
System.out.println(s);
dos.close();
dis.close();
socket.close();
}catch(UnknownHostExceptione){
e.printStackTrace();
}catch(IOExceptione){e.printStackTrace();}
}
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第十 JAVA 网络 编程