-
获取URL的协议getProtocol();主机名:getHost();端口:getPort();文件路径:getPath();文件名:getFile();相对路径:getRef();查询字符串:getQuery()。查看全部
-
mark 重点查看全部
-
一般不关闭流,直接关闭Socket即可。查看全部
-
重点注意查看全部
-
Java中的网络支持 Java提供的网络功能有四大类: 1.InetAddress:用于标识网络上的硬件资源, 2,Url:统一资源定位器, 3.sockets:使用TCP协议实现网络通信的的socket相关类。 4.Datagram:使用UDP协议,将数据保存在数据报中,通过网络进行通信。查看全部
-
计算机通过网络进行通讯需满足:1.唯一标识(IP)2.协议 3.端口号 TCP/IP协议 TCP:Transsmission Control Protocol 传输控制协议 IP:Internet Protocol 互联网协议 协议——HTTP超文件传输协议 FTP文件传输协议 SMTP简单邮件传送协议 Telnet远程登录服务 端口号:用于区分不同的应用程序 端口号范围(0~65535)0~1023为系统所保留 http:80 ftp:21 telnet:23 IP+端口号组成Socket JAVA提供网路功能有四大类: 1.InetAddress:用于表示网络上的硬件资源。 2.URL:同意资源定位符 通过URL可以直接读取或写入网络上的数据。 3.Sockets:使用TCP协议实现网络通信的Socket相关的类。 4.Datagram:使用UDP协议,将数据保存在数据报中,通过网络进行通信。 计算机通过网络进行通讯需满足:1.唯一标识(IP)2.协议 3.端口号 TCP/IP协议 TCP:Transsmission Control Protocol 传输控制协议 IP:Internet Protocol 互联网协议 协议——HTTP超文件传输协议 FTP文件传输协议 SMTP简单邮件传送协议 Telnet远程登录服务 端口号:用于区分不同的应用程序 端口号范围(0~65535)0~1023为系统所保留 http:80 ftp:21 telnet:23查看全部
-
1.创建ServerSocket和Socket ServerSocket ss=new ServerSocket(int Port) 2.打开连接到Socket的输入/输出流 3.按照协议对Socket进行读写操作 4.关闭输入输出流,关闭Socket查看全部
-
客户端实现步骤查看全部
-
服务器端实现步骤查看全部
-
http:80 ftp:21 telnat:23查看全部
-
socket: 1、多线程的优先级(死循环中注意设置优先级问题。)建议降低优先级。 2、关闭socket流,而不提倡关闭输入输出流。 3、使用tcp通信传输对象更符合面向对象编程的思想。 4、通过socket编程传输文件的功能模块是:通过io流读取文件字符流进行传输。查看全部
-
import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.DatagramSocketImplFactory; import java.net.InetAddress; import java.net.SocketException; import java.net.UnknownHostException; /* * 客户端,基于UDP实现 */ public class UdpClient { public static void main(String[] args) throws IOException { /* * 向服务器发送数据 */ //指定服务器的地址,端口号,数据 InetAddress ia=InetAddress.getByName("localhost"); int port=8880; byte[] data="用户名:feifei,密码:123".getBytes();//将其转换为字节数组 //创建数据报,包含发送的数据信息 DatagramPacket dp=new DatagramPacket(data,data.length,ia,port); //创建实现数据的发送 DatagramSocket ds=new DatagramSocket(); //向服务器发送数据 ds.send(dp); /* * 接受服务器响应的数据 */ //创建数据报 byte [] data2=new byte[1024]; DatagramPacket dp1=new DatagramPacket(data2, data2.length); //接收响应的数据 ds.receive(dp1); //读取服务器端响应的数据信息 String s=new String(data2,0,dp1.getLength()); System.out.println("我是客户端,服务器端说:"+s); //关闭 ds.close(); } }查看全部
-
服务器端: import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetAddress; import java.net.SocketException; /** * 服务器端类,基于UDP */ public class UdpServer { public static void main(String[] args) throws IOException { /* 服务器端接受了客户端的信息 */ //先创建DatagramSocket,指定端口号 DatagramSocket ds=new DatagramSocket(8880); System.out.println("服务器端已经启动,等待客户端发送数据"); //创建字节数组,存放接收数据报的大小 byte [] data=new byte[1024]; //创建DatagramPacket数据包,用于接受客户端发送的数据 DatagramPacket dp=new DatagramPacket(data, data.length); //接收客户端发送的数据 ds.receive(dp); //读取客户端的信息 String info=new String(data,0,dp.getLength()); System.out.println("我是服务器端,客户端说:"+info); //向客户端响应信息 //定义客户端的地址,端口号,数据 InetAddress adress=dp.getAddress(); int port=dp.getPort(); byte[] byte1="欢迎您".getBytes(); //创建数据报,包含响应的数据信息 DatagramPacket dp1=new DatagramPacket(byte1, byte1.length,adress,port); //响应客户端 ds.send(dp1); //关闭 ds.close(); } }查看全部
-
一、服务器端向客户端响应数据 /* * 向客户端响应数据 */ //1.定义客户端的地址、端口号、数据 InetAddress address=packet.getAddress(); int port=packet.getPort(); byte[] data2="欢迎您!".getBytes(); //2.创建数据报,包含响应的数据信息 DatagramPacket packet2=new DatagramPacket(data2, data2.length, address, port); //3.响应客户端 socket.send(packet2); //4.关闭资源 socket.close(); 二、 /* * 接收服务器端响应的数据 */ //1.创建数据报,用于接收服务器端响应的数据 byte[] data2=new byte[1024]; DatagramPacket packet2=new DatagramPacket(data2, data2.length); //2.接收服务器响应的数据 socket.receive(packet2); //3.读取数据 String reply=new String(data2, 0, packet2.getLength()); System.out.println("我是客户端,服务器说:"+reply); //4.关闭资源 socket.close();查看全部
-
/* * 服务器端,实现基于UDP的用户登陆 */ public class UDPServer { public static void main(String[] args) throws IOException { /* * 接收客户端发送的数据 */ //1.创建服务器端DatagramSocket,指定端口 DatagramSocket socket=new DatagramSocket(8800); //2.创建数据报,用于接收客户端发送的数据 byte[] data =new byte[1024];//创建字节数组,指定接收的数据包的大小 DatagramPacket packet=new DatagramPacket(data, data.length); //3.接收客户端发送的数据 System.out.println("****服务器端已经启动,等待客户端发送数据"); socket.receive(packet);//此方法在接收到数据报之前会一直阻塞 //4.读取数据 String info=new String(data, 0, packet.getLength()); System.out.println("我是服务器,客户端说:"+info); }查看全部
举报
0/150
提交
取消