package com.atguigu.javase.net;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.InetAddress;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.UnknownHostException;
import org.junit.Test;
public class NetTest {
// 服务器给客户端发送一个字符串
@Test
public void server() throws IOException {
ServerSocket server = new ServerSocket(8888); // TCP服务器就绑定了8888端口.
Socket s1 = server.accept(); // 监听....接受, 此方法用于接受客户端的连接请求.
System.out.println("服务器:" + s1);
InputStream inputStream = s1.getInputStream();
InputStreamReader isr = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(isr);
String line = bufferedReader.readLine();
System.out.println("客户端说 : " + line);
bufferedReader.close();
}
@Test
public void client() throws UnknownHostException, IOException {
Socket s2 = new Socket("127.0.0.1", 8888);
System.out.println(s2);
System.out.println("客户端:" + s2);
// 输出
OutputStream outputStream = s2.getOutputStream();
OutputStreamWriter osw = new OutputStreamWriter(outputStream);
BufferedWriter bufferedWriter = new BufferedWriter(osw);
bufferedWriter.write("你好, 服务器, 我是客户端, 现在有点饿了");
bufferedWriter.newLine();
bufferedWriter.flush();
bufferedWriter.close();
}
@Test
public void test1() throws UnknownHostException {
InetAddress ip = InetAddress.getByName("www.atguigu.com"); // 域名 -> DNS -> ip
System.out.println(ip);
System.out.println(ip.getHostName());
}
}