客户端Client向服务端发送消息
package Socket;
import java.io.IOException;
import java.io.OutputStream;
import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException;
/**
* @author: guorui fu
* @versiion: 1.0
*/
public class Client {
public static void main(String[] args) throws IOException {
//创建Socket连接99 9端口,返回socket对象
Socket socket = new Socket(InetAddress.getLocalHost(),999);
System.out.println("客户端连接成功,返回socket" + socket.getClass());
//客户端发送信息给服务端,与数据通道关联的socket
OutputStream outputStream = socket.getOutputStream();
//写入数据到通道
outputStream.write("hello,write".getBytes());
//关闭流和socket
outputStream.close();
socket.close();
System.out.println("数据通道已关闭");
}
}
package Socket;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;
/**
* @author: guorui fu
* @versiion: 1.0
*/
public class Service {
public static void main(String[] args) throws IOException {
//创建端口,serversocket可以创建很多socket,多个端口,使用accept方法
ServerSocket serverSocket = new ServerSocket(999);
System.out.println("999端口创建成功");
Socket socket = serverSocket.accept();
System.out.println("服务端999端口连接" + socket.getClass());
//从接收的通道读取数据
InputStream inputStream = socket.getInputStream();
byte[] bytes = new byte[1024];
int readlen = 0;
while((readlen = inputStream.read(bytes)) != -1){
System.out.println(new String(bytes,0,readlen));
}
//关闭流和socket和serverSocket
inputStream.close();
socket.close();
serverSocket.close();
}
}