Este artículo comparte el código de implementación específico para la verificación del nombre de usuario del servidor de inicio de sesión del cliente Java para su referencia. El contenido específico es el siguiente
El cliente ingresa al nombre de usuario a través del teclado, y el servidor verifica el nombre de usuario.
Si el nombre de usuario existe, el servidor muestra que XXX está iniciado y el cliente muestra XXX, bienvenido a iniciar sesión.
Si el nombre de usuario no existe, el servidor muestra xxx para intentar iniciar sesión, el cliente muestra xxx y el nombre de usuario no existe.
Inicie sesión como máximo tres veces para evitar el inicio de sesión violento.
import java.io.*; import java.net.*; /**Client*/class Client {public static void main (string [] args) lanza la excepción {socket s = new Socket ("192.168.33.1", 10008); // Cree un servicio BufferedReader bUFR = new BufferedReader (new InputStreamReader (System.in));/Lea el teclado e ingrese el nombre de usuario PrintWriter PW = New New = New Newe PrintWriter (s.getOutputStream (), true); // Escriba el BufferEdreader en el servidor después de leer los datos bufin = new BufferEdreader (new InputStreamReader (s.getInputStream ())); // Leer los datos devueltos por el cliente en For (int x = 0; x <3; x ++) // Login solo 3 veces para establecer {Línea de enrollamiento = bufr.Readline (); pw.println (línea); if (line == null) // Terminar la ruptura con un nombre de usuario vacío; pw.println (línea); String info = bufin.readline (); // Lea los datos devueltos por el servidor System.out.println ("Información del servidor:"+info); if (info.contains ("Bienvenido a iniciar sesión")) // El inicio de sesión del usuario termina el descanso; } bufr.close (); s.close (); }} /**Servidor* / class ServerThread implementa runnable {private Socket s; ServerThread (Socket S) {this.s = s; } public void run () {string ip = s.getInetAddress (). gethostaddress (); System.out.println (IP+"........... Connect"); Pruebe {for (int x = 0; x <3; x ++) {bufferedReader bufin = new BufferedReader (new InputStreamReader (s.getInputStream ()))); // Lea los datos enviados por el nombre de la cadena del cliente = Bufin.Readline (); if (name == null) ruptura; BufferedReader bufr = new BufferedReader (new FileReader ("User.txt")); // Lea la cuenta de usuario que se ha depositado, que originalmente era leer la base de datos, por lo que escribí un texto aquí printWriter out = new PrintWriter (s.getOutStream (), true); // escribir en la transmisión y el servidor escribe una línea = null; Boolean Flag = False; // Juez etiqueta while ((line = bufr.readline ())! = null) // leer datos en la base de datos (use.txt) {if (line.equals (name)) // Si la base de datos y el nombre de usuario son los mismos, terminar {flag = true; romper; }} if (flag) {System.out.println (nombre+": loged"); out.println (nombre+": bienvenido a iniciar sesión"); romper; } else {System.out.println (nombre+": intente iniciar sesión"); out.println (nombre+": el nombre de usuario no existe"); }} s.close (); } catch (Exception e) {Throw New RuntimeException ("Falló de verificación"); }}} Class Server {public static void main (string [] args) lanza la excepción {Serversocket ss = new Serversocket (10008); // Cree Service While (True) {Socket S = Ss.accept (); // Recibir datos enviados por el cliente NUEVO SUBTER (New ServerThread (S)). Start (); // Start Thread}}}}}}}}}}Resultado de impresión:
user.txt
Lo anterior se trata de este artículo, espero que sea útil para el aprendizaje de todos.