欢迎来到天天文库
浏览记录
ID:34488377
大小:132.31 KB
页数:6页
时间:2019-03-06
《(十)网络编程学习总结new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、http://www.aloaha.comSomePDFFeaturessuchasprinting,editing,128BITencryption,etcaredisabledinevaluationmodeTCP/UDP网络编程:先来了解一下TCP/UDP的相关特点。TCP:TransferControlProtocol:传输控制协议,是面向连接,可靠,安全的连接。UDP:UserDatagramProtocol:用户数据报协议,是非面向连接的,不可靠的,不安全的连接。一般用在如:视频传输,网络电话等。我们分开来讨论一下,这两
2、种协议。当然,我们主要是做一下JAVA的TCP的讨论.一.基于TCP协议的网络编程。类:Socket它是一种抽象的网络文件,JAVA封装了这个类,屏蔽了底层的细节操作。它提供了两个很得要的方法:getInputStream()::来获得网络文件中的输入流InputStream对象getOutputStream():来获得网络文件中的输出流OutputStream对象服务器端:类:ServerSocket用PORT号来建立一个ServetSocket对像。方法:accept();返回一个Socket给客户端。它是一个阻塞方法,直到有客
3、户端使用Socket与之建立了连接。如:SERVER:ServerSocketss=newServerSocket(port);Sockets=ss.accept();//进入阻塞,等待客户端连接。CLIENT:Socketc=newSocket(“127.0.0.1”,port);//注:端口号一定要与SERVER一致。与服务器建立了连接,通过IP和PORT下面,我们来做一个例子来掌握JAVA的TCP网络编程做一个服务器,接收客户端发出的字符串,转换成大写之后再返回给客户端,并在客户终端上显示。Coding:SERVER端Publ
4、icclassServer{Publicstaticvoidmain(String[]args){ServerSocketss=newServerScoket(9050);//指定端口号While(true){Sockets=ss.accept();//等待客户端连接。(newMyThread(s)).sort();}}}ClassMyThreadextendsThread{PrivateSockets;PublicMyThread(Sockets){This.s=s;}Publicvoidrun(){InputStreaminSt
5、ream=s.getInputStream();OutputStreamoutStream=s.getOutputStream();BufferedReaderbr=newBufferedReader(newInputStreamReader(inStream));PrintWriterpw=newPrintWriter(outStream);Stringstr=br.readLine();http://www.aloaha.comSomePDFFeaturessuchasprinting,editing,128BITencrypt
6、ion,etcaredisabledinevaluationmodePw.println(str.toUpperCase());Pw.flush();}
7、}CLIENT:PublicclassClient{Publicstaticvoidmain(String[]args){Socketc=newSocket(“127.0.0.1”,9050);InputStreamis=c.getInputStream();OutputStreamos=c.getOutputStream();BufferedReaderbr=newBuffere
8、dReader(newInputStreamReader(is));PrintWriterpw=newPrintWriter(os);Pw.println(“Hello”);Pw.flush();//清空缓冲区Stringstr=br.readLine();System.out.println(str);}}由上面可以看出,JAVA的基于TCP的网络编程非常简单化,不再需要我们去考虑底层的网络,TCP/IP协议等。只需要按照通过SOCKET获得输入输出流对像,再用我们所学的I/O流的知识去操作就OK了。另外,服务端要做成多线程的,就
9、再使用多线程的相关知识去完成,所以说,JAVA的网络编程本身不是很困难,但其加上多线程,I/O流,相互之间就会有一定的复杂度了。其它的例子就不再多举了!!!接下来,我们来总结一下UDP的网络编程。基于UDP的网络编程类:Datagra
此文档下载收益归作者所有