模拟用户登录的功能

import java.net.*; import java.io.*; public class LoginServer { public static void main(String[] args) { try { //建立一个服务器Socket(ServerSocket)指定端口并开始监听 ServerSocket serverSocket=new ServerSocket(8800); //使用accept()方法等待客户端触发通信 Socket socket=serverSocket.accept(); //打开输入输出流 InputStream is=socket.getInputStream(); OutputStream os=socket.getOutputStream(); //获取客户端信息,即从输入流读取信息 BufferedReader br=new BufferedReader(new InputStreamReader(is)); String info=null; while(!((info=br.readLine())==null)){ System.out.println("我是服务器,客户登录信息为:"+info); } //给客户端一个响应,即向输出流写入信息 String reply="欢迎你,登录成功!"; os.write(reply.getBytes()); //关闭资源 br.close(); os.close(); is.close(); socket.close(); serverSocket.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } **************************************************************************************************** import java.net.*; import java.io.*; public class LoginClient { public static void main(String[] args) { try { //建立客户端Socket连接,指定服务器的位置以及端口 Socket socket=new Socket("localhost",8800); //打开输入输出流 OutputStream os=socket.getOutputStream(); InputStream is=socket.getInputStream(); //发送客户端登录信息,即向输出流写入信息 String info="用户名:Tom; 用户密码:123456"; os.write(info.getBytes()); socket.shutdownOutput(); //接收服务器段的响应,即从输入流读取信息 String reply=null; BufferedReader br=new BufferedReader(new InputStreamReader(is)); while(!((reply=br.readLine())==null)){ System.out.println("我是客户端,服务器的响应为:"+reply); } //4.关闭资源 br.close(); is.close(); os.close(); socket.close(); } catch (UnknownHostException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }

    推荐阅读