TCP通信模式
示例:
客户端:
package TCP;
import java.io.OutputStream;
import java.io.PrintStream;
import java.net.Socket;
public class Client {
public static void main(String[] args) throws Exception {
/*1.创建管道的一端
* @parm 1 接收方的ip
* @parm 2 接收方的端口号
*/
Socket socket = new Socket("127.0.0.1", 8888 );
/*2.从管道中获取字节输出流 */
OutputStream os = socket.getOutputStream();
/*3.将字节输出流封装成打印流 */
PrintStream ps = new PrintStream(os);
/*4.发送消息 */
ps.println("我是客户端,正在发送消息。");//必须与接收方接收的格式相符(严格)
ps.flush();
}
}
服务端:
package TCP;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;
import org.omg.CORBA.portable.OutputStream;
public class Serve {
public static void main(String[] args) throws Exception{
/*1.创建管道的另一端 */
ServerSocket serverSocket = new ServerSocket(8888);
/*2.调用accept方法等待接收客户端的socket连接请求 */
Socket socket = serverSocket.accept();
/*3.从socket管道中获取字节输入流 */
InputStream is = socket.getInputStream();
/*4.封装成缓冲字符流 */
BufferedReader br = new BufferedReader(new InputStreamReader(is));
/*5.接收消息 */
String res;
while((res = br.readLine())!=null){
System.out.println(socket.getRemoteSocketAddress()+"说了:"+res);
}
}
}