package com.imooc.inetaddress.test;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;
//服务端
public class Server {
public static void main(String[]args){
//创建一个服务器端Socket,即ServerSocket,指定绑定的端口,并监听
try {
ServerSocket server=new ServerSocket(8990);
//调用accept方法开始监听,等待客服端的连接
System.out.println("等待客户端的连接");
Socket sok =server.accept();
//获取输入流,并读取客户端信息
InputStream is= sok.getInputStream();//字节输入流
//包装为字符流
InputStreamReader da=new InputStreamReader(is);
//将字符流添加缓冲
BufferedReader ga=new BufferedReader(da);
//获取客户端信息条件
String ind=ga.readLine();
ind=null;
while((ga.readLine()!=null)){//读取的不为空就接着读取
System.out.println("我是客户端信息"+ind);
}
sok.shutdownInput(); //或者使用这个方法关闭输入流
//关闭资源
ga.close();
da.close();
is.close();
sok.close();
server.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
import java.net.UnknownHostException;
//客户端
public class Client {
public static void main(String[] args) {
try {
//创建客户端Socket 指定服务器端地址和URL端口
Socket kos=new Socket("localhost",8990);
//客户端向服务器端发送登录信息 获取输出流
OutputStream am= kos.getOutputStream();
//字节流换成打印流
PrintWriter cm=new PrintWriter(am);
cm.write("用户名:admin;密码:123456");
cm.flush();//使用flush方法向服务端发送输出
kos.shutdownOutput();;//关闭输出流
//关闭资源
cm.close();
am.close();
kos.close();
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
相关分类