Dieser Artikel teilt den spezifischen Implementierungscode für Java Client Login Server Benutzername -Bestätigung für Ihre Referenz. Der spezifische Inhalt ist wie folgt
Der Client gibt den Benutzernamen über die Tastatur ein, und der Server überprüft den Benutzernamen.
Wenn der Benutzername vorliegt, zeigt der Server an, dass XXX angemeldet ist und der Client XXX zeigt, willkommen zum Anmelden.
Wenn der Benutzername nicht vorhanden ist, zeigt der Server XXX an, um sich anzumelden, der Client zeigt XXX an und der Benutzername existiert nicht.
Melden Sie sich höchstens dreimal an, um ein gewalttätiges Login zu verhindern.
import Java.io.*; Java.net importieren.*; /**Client*/class Client {public static void main (String [] args) löst Ausnahme aus {Socket S = neuer Socket ("192.168.33.1", 10008); // Erstellen eines Service BufferedReader bufr = neuer BufferedReader (New InputStreamReader (System.in)). Pressewriter (S.GetOutputStream (), true); // Schreiben Sie den BufferedReader nach dem Lesen des Daten bufin = new bufferedReader (neuer InputStreamReader (s.getInputStream ()); // Lesen Sie die vom Client zurückgegebenen Daten in die (int x = 0; x <3; x ++). pw.println (Linie); if (line == null) // Break mit einem leeren Benutzernamen beenden; pw.println (Linie); String info = bufin.readline (); // Lesen Sie die vom Serversystem zurückgegebenen Daten. if (info.contains ("Willkommen zum Anmelden in")) // Benutzeranmeldung Beendigung Pause; } buffr.close (); S.CLOSE (); }} /**Server* / class Serverthread implementiert 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 ()); // Lesen Sie die vom Client -String -Namen = bufin.readline () gesendeten Daten; if (name == null) brechen; BufferedReader buf = new bufferedReader (neuer fileReader ("user.txt"); // Lesen Sie das Benutzerkonto, das abgelagert wurde, das ursprünglich die Datenbank lesen sollte, also habe ich einen Text hier geschrieben, der hier Prinker out = new printwriter (s.getOutputStream (), true); // Schreiben in den Stream, und der Server schriftlich = null. boolean flag = false; // Richter Tag while ((line = buffr.readline ())! brechen; }} if (flag) {System.out.println (Name+": logined"); out.println (name+": Willkommen zum Anmelden"); brechen; } else {System.out.println (Name+": Versuchen Sie, sich anzumelden"); out.println (Name+": Benutzername existiert nicht"); }} s.close (); } catch (Ausnahme E) {neue runTimeException ("Verifizierung fehlgeschlagen"); }}} class Server {public static void main (String [] args) löst Ausnahme aus {ServerSocket SS = New ServerSocket (10008); // Erstellen von Dienst, während (true) {Socket s = ss.accept (); // Daten empfangen vom Client New Thread (New Serverthread (s).Druckergebnis:
user.txt
Das Obige dreht sich alles um diesen Artikel, ich hoffe, es wird für das Lernen aller hilfreich sein.