-
服务器端实现步骤: 1、创建DatagramSocket,指定端口号 2、创建DatagramPacket 3、接收客户端发送的数据信息 4、读取数据 客户端: 1、定义发送信息 2、创建DatagramPacket:包含将要发送信息 3、创建DatagramSocket 4、发送数据 服务端具体代码: 1、创建服务器端DatagramSocket DatagramSocket socket=DatagramSocket(8800); 2、创建数据报,用户接收客户端发送的数据 byte[] data=new byte[1024]; DatagramPacket packet=new datagramPacket(data,data.length); 3、接收客户端发送的数据 socket.receive(packet);//会处于阻塞,直到接收到数据报 4、读取数据 String info=new String(data,0,packet.getLength()); System.out.println("客户端说"+info)查看全部
-
UDP编程 1、UDP协议(用户数据报协议)是无连接、不可靠、无序的。 2、UDP协议以数据报作为数据传输的载体。 3、使用UDP进行数据传输时,首先需要将要传输的数据定义成数据报(Datagram),在数据报中指明所要达到的Socket(主机地址和端口号),然后在将数据报发生出去。 4、相关操作类:DatagramPacket:表示数据报包 DatagramSocket:进行端到端通信的类 DatagramPacket类构造方法: 1、DatagramPacket(byte[] buf,int length)//接受长度为length的数据包 2、DatagramPacket(byte[] buf,int length,InetAddress address,int port)//将指定长度的字节发生到指定主机的指定端口 DatagramSocket类 1、构造方法:DatagramSocket(); DatagramSocket(int port,InetAddress laddr); 2、close();//关闭DatagramSocket 3、getInetAddress();//获取地址 4、getPort();//获取端口号 5、send(DatagramPacket p);//从此套接字发送数据包 recrive(DatagramPacket p);//从此套接字接收数据包查看全部
-
步骤: (1)创建ServerSocket和Socket (2)打开连接到Socket的输入/输出操作 (3)按照协议对Socket进行读/写操作 (4)关闭输入输出流,关闭Socket 服务器端: (1)创建ServerSocket对象,绑定监听器 (2)通过accept()方法监听客户端请求 (3)连接建立以后通过读取客户端发送请求消息 (4)通过输出流向客户端发送响应信息 (5)关闭资源 客户端: (1)创建Socket对象,指明需要连接的服务器地址和端口号(1023以后的端口) (2)连接建立后,通过输出流向服务器端请求 (3)通过输入流获取服务器响应信息 (4)关闭资源 常用I/O操作 InputStream is = socket.getInputStream();//字节输入流 InputStreamReader isr = new InputStreamReader(is)//将字节输入流转换为字符输入流 BufferedReader br = new BufferedReader(isr);//为输入流添加缓冲 br.readLine()按行读取 flush()刷新缓存查看全部
-
通信过程(Socket通信模型): 1、在服务端建立一个ServerSocket,绑定相应的端口,并且在指定的端口进行侦听,等待客户端的连接。 2、当客户端创建连接Socket并且向服务端发送请求。 3、服务器收到请求,并且接受客户端的请求信息。一旦接收到客户端的连接请求后,会创建一个链接socket,用来与客户端的socket进行通信。 通过相应的输入/输出流进行数据的交换,数据的发送接收以及数据的响应等等。 4、当客户端和服务端通信完毕后,需要分别关闭socket,结束通信。 ServerSocket常用方法: ServerSocket(int port)——创建并绑定到特定端口的服务器套接字 accept()——侦听并接受到此套接字的连接 close()——关闭此套接字 getInetAddress()——得到ServerSocket对象绑定的IP地址。如果ServerSocket对象未绑定IP地址,返回0.0.0.0。 getLocalPort()——返回此套接字在其上侦听的端口 Socket常用方法: Socket(InetAddress address, int port)——创建一个套接字并将其连接到指定ip地址的指定端口号 Socket(String host, int port)——创建一个套接字并将其连接到指定主机上的指定端口号 close()——关闭此套接字 getInetAddress()——返回套接字连接的地址 getInputStream()——返回此套接字的输入流 getOutputStream——返回此套接字的输出流查看全部
-
URL 1.URL(Uniform Resource Locator)统一资源定位符,表示Internet上某一资源的地址。 2.URL由两部分组成:协议名称和资源名称,中间用冒号隔开。 3.在java.net中提供了URL类来表示URL。 使用URL读取网页的内容 1.通过URL对象的openStream()方法可以得到指定资源的输入流。 2.通过输入流可以读取、访问网络上的数据。 ---------------------------------------- //创建一个URL实例 URL imooc=new URL("http://www.imooc.com"); //?后面表示参数,#后面表示锚点 URL url=new URL(imooc, "/index.html?username=tom#test"); //主要方法: //getProtocol();getHost();getPort();getPath();getFile();getRef();getQuery(); //读取网页内容 //通过URL的openStream方法获取URL对象所表示的资源的字节输入流 InputStream is = url.openStream();查看全部
-
url:统一资源定位符:表示internet上的网络资源<br> 协议+资源名称<br> url常用方法:<br> 存在java.net包中,提供创建url/子url,获取url等方法<br> 第一步:创建实例<br> URL imooc=new URL("http://www.imooc.com");<br> //在原有url下再创建url<br> URL url=new URL(imooc,"/index.html?username=tom#test")<br> //获取url的信息<br> url.getProtocol();//获取协议http<br> url.getHost();//获取主机www.imooc.com<br> url.getPort();//获取端口号:-1<br> url.getPath();//获取文件路径/index.html<br> url.getFile();//获取文件名/index.html?username=tom<br> url.getRef();//获取相对路径test<br> url.getQuery();//查询字符串username=tom<br> 注:创建url时没有指定端口号则getPort方法返回-1,协议不同会使用默认端口 2url读取网页内容:<br> URL url=new URL("http://www.baidu.com");<br> //获取输入流通过openStream方法<br> InputStream is=url.openStream();<br> //转化成字符输入流<br> InputStream isr=new InputStreamReader(is);<br> //加缓冲提高读取效率<br> BufferedReader br=new BufferedReader();<br> String date=br.teadline(); while(date.next()){System.out.print(date); date=br.readLine(); } 完成后要关闭资源相关资源:br,isr字符输入流,is字节输入流 注:如果输出是乱码则要在is字节输入流中规定编码为 InputStream isr=new InputStreamReader(is,"utf8");<br>查看全部
-
1.InetAddress类没有构造方法,所以不能直接new出一个对象; 可以通过InetAddress类的静态方法获得InetAddress的对象; InetAddress.getLocalHost();// InetAddress.getByName("");//根据计算机名获取相应信息 2.类主要方法: String - address.getHostName();//获取计算机名 String - address.getHostAddress();//获取IP地址 public static InetAddress getByName(String host) throws UnknownHostException 在给定主机名的情况下确定主机的 IP 地址。 主机名可以是机器名(如 "java.sun.com"),也可以是其 IP 地址的文本表示形式查看全部
-
服务器端实现步骤 1.创建DatagramSocket,指定端口号 2.创建DatagramPacket 3.接受客户端发送的数据信息 4.读取数据 客户端实现步骤 1.定义发送信息(例如服务器地址、端口号、内容) 2.创建DatagramPacket,包含将要发送的信息 3.创建DatagramSocket 4.发送数据查看全部
-
Socket编程传递文件查看全部
-
使用TCP通信传输对象(客户端向服务器端传输user对象)查看全部
-
是否关闭输入输出流查看全部
-
多线程应考虑优先级查看全部
-
**UDP编程** 1.UDP协议(用户数据报协议)是无连接、不可靠、无序的(传输顺序不固定),但速度会比较快。 2.进行数据传输时,首先需要将要传输的数据定义成数据报(Datagram),在数据报中指明数据所要达到的Socket(主机地址和端口号),然后再将数据报发送出去。 3.相关操作类 DatagramPacket:表示数据报包 DatagramSocket:进行端到端通信的类查看全部
-
socket通信模型查看全部
-
URL查看全部
举报
0/150
提交
取消