Java基础-网络编程(TCP-客户端并发登录)
来源:互联网 发布:淘宝禁售商品 编辑:程序博客网 时间:2024/05/20 18:48
客户端通过键盘录入用户名
服务端对这个用户名进行校验
如果该用户存在,在服务端显示xxx,已登陆
并在客户端显示xxx,欢迎光临
如果该用户不存在,在服务端显示xxx,尝试登陆
并在客户端显示xxx,该用户不存在
最多就登陆三次
import java.io.*;import java.net.*;class LoginClient{ public static void main(String[] args) throws Exception { Socket s = new Socket("192.168.0.100",10008); BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in)); PrintWriter out = new PrintWriter(s.getOutputStream(),true); BufferedReader bufIn = new BufferedReader(new InputStreamReader(s.getInputStream())); for(int x=0;x<3;x++) { String line = bufr.readLine(); if(line==null) break; out.println(line); String info = bufIn.readLine(); System.out.println("info:"+info); if(info.contains("欢迎")) break; } bufr.close(); s.close(); }} class UserThread implements Runnable{ private Socket s; UserThread(Socket s) { this.s = s; } public void run() { String ip = s.getInetAddress().getHostAddress(); System.out.println(ip+"....connected"); try { for(int x=0;x<3;x++) { BufferedReader bufIn = new BufferedReader(new InputStreamReader(s.getInputStream())); String name = bufIn.readLine(); if(name==null) break; BufferedReader bufr = new BufferedReader(new FileReader("user.txt")); PrintWriter out = new PrintWriter(s.getOutputStream(),true); String line = null; boolean flag = false; while((line=bufr.readLine())!=null) { if(line.equals(name)) { flag = true; break; } } if(flag) { System.out.println(name+",已登陆"); out.println(name+",欢迎光临"); break; } else { System.out.println(name+",尝试登陆"); out.println(name+",用户名不存在"); } } s.close(); } catch(Exception e) { throw new RuntimeException(ip+"校验失败"); } }} class LoginServer{ public static void main(String[] args) throws Exception { ServerSocket ss = new ServerSocket(10008); while(true) { Socket s = ss.accept(); new Thread(new UserThread(s)).start(); } }}
0 0
- Java基础-网络编程(TCP-客户端并发登录)
- 网络编程二:TCP传输、TCP双向传输、文本转换、并发上传图片、客户端并发登录
- Java基础24天--02--网络编程(TCP--客户端并发上传图片)
- Java基础24天--03--网络编程(TCP--客户端并发登陆)
- 网络编程--TCP客户端并发登陆
- Tcp客户端并发登录
- Tcp-客户端并发登录
- JAVA基础 day25 网络编程 IP类 UDP,TCP传输学习 简易聊天工具 TCP并发学习
- java基础----网络编程 tcp
- 黑马程序员-----网络编程中Tcp客户端并发上传图片
- 网络编程---TCP客户端
- java基础-网络编程之TCP编程
- 黑马程序员——Java基础——网络编程(客户端并发上传图片)
- java基础—网络编程——TCP客户端与服务端交互
- 网络编程基础(1)----------TCP客户端与服务器
- C++网络编程基础代码(客户端)--基于TCP协议
- java基础--网络编程之TCP
- Java基础-网络编程(TCP练习)
- hdu 4857 逃生 拓扑排序+优先队列,逆向处理
- java中堆和栈的区别
- Java基础-网络编程(TCP-上传图片)
- IE下判断IE版本的语句
- CentOS 下配置pptp vpn client 连接 pptp vpn Server (此文有误,请忽略)
- Java基础-网络编程(TCP-客户端并发登录)
- C#:DataGridView控件(数据控件)
- Oracle 批量数据的导入
- Qt的4个图像类QImage/QPixmap/QBitmap/QPicture
- 第八章--函数进阶
- Java基础-网络编程(浏览器客户端-自定义服务端)
- poj 3522 Slim Span
- Java基础-网络编程(自定义浏览器-Tomcat服务端)
- 技术生涯新转折