一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - java客戶端登陸服務器用戶名驗證

java客戶端登陸服務器用戶名驗證

2020-05-03 14:07chaoyu168 JAVA教程

這篇文章主要為大家詳細介紹了java客戶端登陸服務器用戶名驗證的相關資料,需要的朋友可以參考下

本文實例為大家分享了java客戶端登陸服務器用戶名驗證的具體實現代碼,供大家參考,具體內容如下

客戶端通過鍵盤錄入用戶名,服務端對用戶名進行驗證。 
如果用戶名存在,服務端顯示xxx已登錄,客戶端顯示xxx,歡迎登陸。
如果用戶名不存在,服務端顯示xxx嘗試登陸,客戶端顯示xxx,用戶名不存在。 
最多登陸三次,防止暴力登陸。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
import java.io.*;
import java.net.*;
/*
*客戶端
*/
class client
{
 public static void main(String[] args) throws Exception
 {
  Socket s = new Socket("192.168.33.1",10008);//建立服務
  BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in));//讀取鍵盤輸入用戶名
  PrintWriter pw = new PrintWriter(s.getOutputStream(),true);//讀到數據往服務端寫
  BufferedReader bufin =
   new BufferedReader(new InputStreamReader(s.getInputStream()));//將客戶端返回的數據讀入
  for(int x = 0;x < 3; x ++)//只登陸3次設定
  {
   String line = bufr.readLine();//讀取用戶名
   pw.println(line);
   if(line == null)//為空用戶名終止
    break;
   pw.println(line);
   String info = bufin.readLine();//讀取服務端返回的數據
   System.out.println("Server info:"+info);
   if(info.contains("歡迎登陸"))//用戶登錄終止
    break;
  }
  bufr.close();
  s.close();
 }
}
/*
*服務端
*/
class ServerThread implements Runnable
{
 private Socket s;
 ServerThread(Socket s)
 {
  this.s = s;
 }
 public void run()
 {
  String ip = s.getInetAddress().getHostAddress();
  System.out.println(ip+"...........connect");
  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)//讀取數據庫(Use.txt)中數據
    {
     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("驗證失敗");
  }
 }
}
class server
{
 public static void main(String[] args) throws Exception
 {
  ServerSocket ss = new ServerSocket(10008);//建立服務
  while (true)
  {
   Socket s = ss.accept();//接收客戶端傳來數據
   new Thread(new ServerThread(s)).start();//開啟線程
  }
 }
}

打印結果:

java客戶端登陸服務器用戶名驗證

user.txt

java客戶端登陸服務器用戶名驗證

以上就是本文的全部內容,希望對大家的學習有所幫助。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 俄罗斯性高清完整版 | 国产91精品露脸国语对白 | 啪啪国产视频 | 欧美摸胸 | 教师波多野结衣在线播放 | 国产高清一区二区三区免费视频 | 99爱视频 | 亚洲国产AV一区二区三区四区 | 日韩r | 日本一区二区三区久久 | 男人猛戳女人下部30分钟 | 日本一区二区三区久久 | 国产欧美日韩精品在线 | 192.168.191 | 精品国产自在天天线2019 | 国产精品免费久久久久影院 | porno movie hd高清 | 美女脱了内裤让男桶爽 | 国产精品一区二区国产 | 美女脱了内裤让男桶爽 | 被黑人日| 小柔的性放荡羞辱日记动漫 | 精品免费久久久久久影院 | ysl蜜桃色成人麻豆 youwu在线影院 | 故意短裙公车被强好爽在线播放 | 大ji吧快给我别停受不了视频 | 特黄特黄一级片 | 日韩xx00 | 武侠艳妇屈辱的张开双腿 | 久久精品国产色蜜蜜麻豆国语版 | m3u8久久国产精品影院 | 好紧好爽再叫浪一点点潘金莲 | 欧美久久一区二区三区 | 久久久久综合 | 日韩在线免费播放 | 日本暖暖视频在线观看 | 欧美va免费大片 | 欧美在线看片a免费观看 | 私人黄色影院 | 91男人| 禁漫H天堂免费A漫 |