Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求。
Java已经简化了Socket的编程接口。Java提供了ServerSocket来对其进行支持。事实上当创建该类的一个实例对象并提供一个端口资源,就建立了一个固定位置可以让其他计算机来访问了,如:ServerSocket server=new ServerSocket(6789);
这里稍微要注意的是端口的分配必须是唯一的。因为端口是为了唯一标识每台计算机唯一服务的。另外端口号是从0到65535之间的,前1024个端口已经被TCP/IP作为保留端口,因此你所分配的端口只能是1024个之后的。
public class JavaTest { public static void main (String[] args) throws IOException { //定义一个ServerSocket监听在端口2222上 ServerSocket server = new ServerSocket(2222); //server尝试接收其他Socket的连接请求,server的accept方法是阻塞式的的 Socket client = server.accept(); BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream())); PrintWriter out = new PrintWriter(client.getOutputStream()); while(true) { String str = in.readLine(); out.println("has receive the input: " + str); out.flush(); if(str.equals("end")) { break; } } client.close(); server.close(); } }
时间: 2024-10-23 14:48:06