TCP传输服务端

1.TCP传输服务端:

import java.io.IOException;

import java.io.InputStream;

import java.net.ServerSocket;

import java.net.Socket;

public class TCPServerDemo {

public static void main(String[] args) throws Exception {

// TODO Auto-generated method stub

/*

* 需求:定义端点接受数据并打印在控制台上

*

* 服务端:

* 1.建立服务端的socket服务,ServerSocket();

*  并监听一个端口

* 2.获取连接过来的客户端对象

* 通过serverSocket的 accept()方法。所以这个方法是阻塞式的(没有连接就会等)

* 3.客户端如果发过来数据,那么服务端要使用对应的客户端对象,并获取该客户端对象的读取流来读取发过来的数据

*  并打印在控制台

* 4.关闭服务端(可选)

*/

//1.建立服务端的socket服务,ServerSocket(),并监听一个端口;

ServerSocket ss = new ServerSocket(10003);

//2.通过accept方法获取连接过来的客户端对象

Socket s = ss.accept();

String ip = s.getInetAddress().getHostAddress();

System.out.println("ip:"+ip);

//3.获取客户端发送过来的数据,那么要使用客户端对象的读取流来读取数据

InputStream in = s.getInputStream();

byte[] buf = new byte[1024];

int len = in.read(buf);

System.out.println(new String(buf,0,len));

s.close();

}

}


2.TCP传输客户端:

import java.io.IOException;

import java.io.OutputStream;

import java.net.Socket;

import java.net.UnknownHostException;

public class TCPClientDemo {

public static void main(String[] args) throws UnknownHostException, IOException {

// TODO Auto-generated method stub

//1.创建客户端的socket服务 并指定连接的主机和端口

Socket s = new Socket("192.168.1.118", 10003);

//2.为了发送数据,应该获取socket流中的输出流

OutputStream out = s.getOutputStream();

out.write("TCP gemen lai le ".getBytes());

s.close();

}

}

你可能感兴趣的:(TCP传输服务端)