资源描述:
《java_socket_编程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、主要内容TCP协议Socket编程1UDP协议Socket编程2Socket编程实例3JavaMail邮件编程4Socket通讯网络上的两个程序通过一个双向的通讯连接实现数据的交换,这个双向链路的一端称为一个Socket。Socket通常用来实现客户方和服务方的连接。两类传输协议TCP(TransportControlProtocol)面向连接的能够提供可靠的流式数据传输的协议。类似于打电话的过程。URL,URLConnection,Socket,ServerSocket等类都使用TCP协议进行网络通讯。UDP(UserDatagramProtocol)非面向连接
2、的提供不可靠的数据包式的数据传输的协议。类似于从邮局发送信件的过程。DatagramPacket,DatagramSocket,MulticastSocket等类使用UDP协议进行网络通讯。1.TCP协议Socket编程Java中与Socket编程相关的包:importjava.io.*;importjava.net.*;Java中提供了两类的TCPSocket:服务器端:java.net.Serversocket客户端:java.net.socket2.TCPSocket通信的过程Client-serverandServiceServerClientServic
3、eshttp(80)SMTP(25)FTP(21)Telnet(23)Socket通信过程(1)服务器建立监听进程,监听每个端口是否要求进行通信.(2)客户端创建一个Socket对象,向服务器端发送连接请求.(3)服务器监听到客户端的连接请求,创建一个Socket,与客户端进行通信.(4)建立接收和发送两个缓存区,并打开Socket及其输入、输出流.(5)根据协议读写Socket内容.(6)通信结束后关闭Socket.Socket通信过程newSocketnewSocketServerSocketClientServerRead/WriteDataRead/Wri
4、teDataCloseSocketCloseSocketwaitrequestconnectacceptsendI/Ostreamreceivereceivesendclosedisconnectclose服务器端常用函数PublicServerSocket(port)throwsIOExceptionPublicAccept()throwsIOExceptionPublicclose()throwsIOExceptionPublicSetSoTimeout(inttimeout)throwsIOException//设置最大监听时间客户端常用函数PublicSo
5、cket(address,port)throwsIOExceptionPublicvoidclose()throwsIOExceptionPublicInetAddressgetInetAddress()PublicInputStreamgetInputStream()throwsIOExceptionPublicInetAddressgetlocalAddress()PublicintgetLocalPort()PublicOutputStreamgetOutputStream()throwsIOException客户端常用函数PublicintgetRecei
6、veBufferSize()throwsSocketExceptionPublicintgetSendBufferSize()throwsSocketExceptionPublicbooleanisClosed()PublicbooleanisConnectedPublicvoidsetSendBufferSize(intsize)throwsSocketExceptionPublicvoidsetReceiveBufferSize(intsize)throwsSocketExceptionSocket通信模式单线程Socket通信多用户排队Socket通信多线程
7、Socket通信创建socketSocket(InetAddressaddress,intport);Socket(InetAddressaddress,intport,booleanstream);Socket(Stringhost,intport);Socket(Stringhost,intport,booleanstream);ServerSocket(intport);ServerSocket(intport,intcount);客户端Socket的建立try{Socketsocket=newSocket(”127.0.0.1",2000);}catch(
8、IOExc