Java网络编程

Java网络编程

 TCP和UDP

 

Socket编程 

ServerSocket和Socket

TCPServer .java

import java.net.*;
import java.io.*;
/*
	首先启动Server,在启动Client,编写时也是一样
*/
public class TCPServer {
	public static void main(String[] args) throws Exception {
		//ServerSocket(int port),指定端口为6666
		ServerSocket ss = new ServerSocket(6666);
		
		/*
		Socket s = ss.accept();
		System.out.println("a client connect!");
		*/
		while(true) {
			//accept()接受,阻塞式的
			Socket s = ss.accept();
			System.out.println("a client connect!");
			//输入流
			DataInputStream dis = new DataInputStream(s.getInputStream());
			//readUTF,读,阻塞式的
			System.out.println(dis.readUTF());
			dis.close();
			s.close();
		}
		
		
	}
}

 TCPClient.java

import java.net.*;
import java.io.*;

public class TCPClient {
	public static void main(String[] args) throws Exception {
		//Socket(String host, int port),指定主机和端口
		Socket s = new Socket("127.0.0.1", 6666);
		//输出流
		OutputStream os = s.getOutputStream();
		DataOutputStream dos = new DataOutputStream(os);
		Thread.sleep(3000);
		//写
		dos.writeUTF("hello server!");
		dos.flush();
		dos.close();
		s.close();
		
	}
}

 

f:\java\socket>javac TCPServer.java

f:\java\socket>java TCPServer
a client connect!

f:\java\socket>java TCPServer
a client connect!

f:\java\socket>javac TCPServer.java

f:\java\socket>java TCPServer
a client connect!
hello server!
a client connect!
hello server!
a client connect!
hello server!

 

f:\java\socket>javac TCPClient.java

f:\java\socket>java TCPClient

f:\java\socket>java TCPClient

f:\java\socket>java TCPClient

f:\java\socket>

 

猜你喜欢

转载自mfcfine.iteye.com/blog/2386827