网络传输 简单demo

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());
    }
}
 
posted @ 2020-05-11 03:25  silence022  阅读(25)  评论(0)    收藏  举报