تشارك هذه المقالة رمز التنفيذ المحدد لـ Java Client Client Dogin Server التحقق من مرجعك. المحتوى المحدد كما يلي
يدخل العميل اسم المستخدم من خلال لوحة المفاتيح ، ويتحقق الخادم من اسم المستخدم.
في حالة وجود اسم المستخدم ، يوضح الخادم أنه تم تسجيل الدخول xxx ، ويعرض العميل xxx ، مرحبًا بك في تسجيل الدخول.
إذا لم يكن اسم المستخدم موجودًا ، فإن الخادم يعرض xxx لمحاولة تسجيل الدخول ، ويعرض العميل xxx ، ولا يوجد اسم المستخدم.
تسجيل الدخول على الأكثر ثلاث مرات لمنع تسجيل الدخول العنيف.
استيراد java.io.*؛ استيراد java.net.*؛ /**عميل*/class client {public static void main (string [] args) يرمي الاستثناء {socket s = new Socket ("192.168.33.1" ، 10008) ؛ // إنشاء خدمة Bufferreader Bufr = new BufferReader (new inputstreaderer (system.in)) printWriter (s.getOutputStream () ، true) ؛ // اكتب bufferedreader إلى الخادم بعد قراءة البيانات bufin = new BufferedReader (new inputStreamReader (s.getInputStream ())) ؛ // اقرأ البيانات التي يتم إرجاعها بواسطة العميل إلى (int x = 0 ؛ اسم pw.println (السطر) ؛ if (line == null) // إنهاء فاصل باسم مستخدم فارغ ؛ pw.println (الخط) ؛ string info = bufin.readline () ؛ // اقرأ البيانات التي تم إرجاعها بواسطة server system.out.println ("معلومات الخادم:"+info) ؛ if (info.contains ("مرحبًا بك في تسجيل الدخول")) // تنتهي تسجيل الدخول إلى المستخدم ؛ } bufr.close () ؛ S.Close () ؛ }} /**server* / class serverThread تنفذ Runnable {socket s ؛ ServerThread (Socket s) {this.s = s ؛ } public void run () {string ip = s.getInetAddress (). gethostaddress () ؛ System.out.println (IP+"........... Connect") ؛ حاول {for (int x = 0 ؛ x <3 ؛ x ++) {bufferedReader bufin = new BufferedReader (new inputStreamReader (s.getInputStream ())) ؛ // اقرأ البيانات المرسلة بواسطة اسم سلسلة العميل = bufin.readline () ؛ إذا (name == null) استراحة ؛ BufferedReader BUFR = جديد BufferedReader (New FileReader ("user.txt")) ؛ // اقرأ حساب المستخدم الذي تم إيداعه ، والذي كان في الأصل قراءة قاعدة البيانات ، لذلك كتبت رسالة نصية هنا out = null null ؛ علامة Boolean = false ؛ // ugge tag بينما ((line = bufr.readline ())! = null) // قراءة البيانات في قاعدة البيانات (use.txt) {if (line.equals (name)) // إذا كانت قاعدة البيانات وقراءة اسم المستخدم هي نفسها ، فإنها تنتهي {flag = true ؛ استراحة؛ }} if (flag) {system.out.println (name+": logined") ؛ Out.println (name+": مرحبًا بك في تسجيل الدخول") ؛ استراحة؛ } آخر {system.out.println (name+": حاول تسجيل الدخول") ؛ Out.println (الاسم+": اسم المستخدم غير موجود") ؛ }} S.Close () ؛ } catch (استثناء e) {رمي new runTimeException ("فشل التحقق") ؛ }}} class server {public static void main (string [] args) يرمي الاستثناء {serversocket ss = new serversocket (10008) ؛ // إنشاء خدمة بينما (صواب) {socket s = ss.accept ()نتيجة الطباعة:
user.txt
ما سبق هو كل شيء عن هذا المقال ، آمل أن يكون مفيدًا لتعلم الجميع.