كانت هناك العديد من المقالات حول رموز التحقق من صور Java مؤخرًا ، مما يساعد الجميع على إتقان تقنية توليد رمز التحقق من Java. ما يلي هو أبسط طريقة لإنشاء رموز التحقق من صورة Java للرجوع إليها.
في الوقت الحاضر ، ستنظر جميع الصناعات في تسجيل الآلات عند تخصيص الأنظمة. الطريقة الأكثر فعالية الآن هي الدخول إلى التحقق. هناك العديد من الطرق للتحقق الآن:
1. التحقق من المشكلة هو في الواقع التحقق من الصورة. قم بإنشاء سؤال على الصورة ، ثم أدخل المربع لإدخال الإجابة.
2. التحقق من الصورة ، أدخل معلومات النص المعروضة على الصورة.
3. التحقق من الرسائل القصيرة معقد للغاية ولا يحب المستخدمون ذلك كثيرًا.
4. هناك أيضًا أحدث طريقة للتحقق من Baidu. يتم إنشاء النص على الصورة ، ويظهر مربع نقرة نص لتحديد النص الذي تراه على صورة التحقق.
الآن دعنا نشارك الرمز لجافا لإنشاء رمز التحقق ، وهو رمز أساسي. يمكن استخدامه مباشرة في التعلم. إذا كنت بحاجة إلى تحقيق أكثر تعقيدًا ، فيمكنك إضافة التحقق المنطقي بنفسك.
controllerpublic class imgverifycode يمتد httpservlet { / ** * * / private Static Final Long SerialVersionuid = 1L ؛ /*** عرض صورة رمز التحقق. */ عرض int الخاص = 70 ؛ /*** ارتفاع صورة رمز التحقق. */ private int الارتفاع = 30 ؛ / *** عدد أحرف رمز التحقق*/ private Int CodeCount = 5 ؛ / ** * xx */ private int xx = 0 ؛ / *** ارتفاع الخط*/ الخاص int fontheight ؛ / ** * codey */ private int codey ؛ / ** * CodeSequence */ string [] CodeSequence = {"1" ، "2" ، "3" ، "4" ، "5" ، "6" ، "7" ، "8" ، "9" ، "A" ، "A" ، "B" ، "B" ، "C" ، "C" ، "D" ، "D" ، "E" ، "E" ، "F" ، "F" ، "G" ، "Z" ، "X" ، "Q" ، "V"} ؛ / *** تهيئة سمات صورة التحقق*/ public void init () يلقي ServleTexception {// احصل على معلومات أولية من web.xml // width strwidth = width+"" ؛ // سلسلة الارتفاع strheight = الارتفاع+"" ؛ // عدد الأحرف strcodeCount = codeCount+"" ؛ // تحويل المعلومات التي تم تكوينها إلى تجربة عددية {if (strwidth! = null && strwidth.length ()! = 0) {width = integer.parseint (strwidth) ؛ } if (strheight! = null && strheight.length ()! = 0) {height = integer.parseint (strheight) ؛ } if (strcodeCount! = null && strcodeCount.length ()! = 0) {codeCount = integer.parseint (strcodeCount) ؛ }} catch (numberFormatexception e) {E.PrintStackTrace () ؛ } xx = width / (codeCount + 2) ؛ // المسافة الأفقية لتوليد أرقام عشوائية fontheight = الارتفاع - 12 ؛ // الارتفاع العددي لتوليد أرقام عشوائية codey = الارتفاع - 8 ؛ . // تحديد الصورة العازلة bufferedimage buffimg = جديد bufferedImage (العرض ، الارتفاع ، bufferedImage.type_int_rgb) ؛ graphics2d gd = buffimg.creategraphics () ؛ // تحديد الصورة العازلة bufferedimage buffimg = جديد bufferedImage (العرض ، الارتفاع ، bufferedImage.type_int_rgb) ؛ graphics2d gd = buffimg.creategraphics () ؛ // تحديد الصورة العازلة bufferedimage buffimg = جديد bufferedImage (العرض ، الارتفاع ، bufferedImage.type_int_rgb) ؛ graphics2d gd = buffimg.creategraphics () ؛ // إنشاء فئة من أرقام العشر عشوائي عشوائي = جديد عشوائي () ؛ // املأ الصورة باسم GD.SetColor الأبيض (color.hite) ؛ gd.fillRect (0 ، 0 ، العرض ، الارتفاع) ؛ // إنشاء خط ، يجب تحديد حجم الخط وفقًا لارتفاع الصورة. font font = new font ("flexedsys" ، font.plain ، fontheight) ؛ // اضبط الخط. gd.setfont (الخط) ؛ // رسم الحدود. gd.setColor (color.black) ؛ gd.drawRect (0 ، 0 ، العرض - 1 ، الارتفاع - 1) ؛ // ينشئ بشكل عشوائي 4 خطوط تداخل ، مما يجعل رمز المصادقة في الصورة أقل عرضة لاكتشاف البرامج الأخرى. gd.setColor (color.black) ؛ لـ (int i = 0 ؛ i <4 ؛ i ++) {int x = random.nextint (width) ؛ int y = random.nextint (الارتفاع) ؛ int xl = random.nextint (12) ؛ int yl = random.nextint (12) ؛ gd.drawline (x ، y ، x + xl ، y + yl) ؛ } // يتم استخدام RandomCode لحفظ رموز التحقق التي تم إنشاؤها عشوائيًا بحيث يمكن للمستخدمين التحقق منها بعد تسجيل الدخول. StringBuffer RandomCode = جديد StringBuffer () ؛ int red = 0 ، الأخضر = 0 ، الأزرق = 0 ؛ // ينشئ بشكل عشوائي رمز التحقق من رقم الرموز. لـ (int i = 0 ؛ i <codeCount ؛ i ++) {// احصل على رقم رمز التحقق الذي تم إنشاؤه عشوائيًا. String strrand = string.valueof (codeesequence [random.nextint (27)]) ؛ // إنشاء مكونات ألوان عشوائية لإنشاء قيمة اللون ، بحيث تكون قيمة لون كل إخراج رقم مختلفة. أحمر = عشوائي. nextint (125) ؛ الأخضر = random.nextint (255) ؛ Blue = Random.NextInt (200) ؛ // استخدم اللون الذي تم إنشاؤه عشوائيًا لرسم رمز التحقق في الصورة. GD.SetColor (لون جديد (أحمر ، أخضر ، أزرق)) ؛ gd.drawString (strrrand ، (i + 1) * xx ، codey) ؛ // الجمع بين أربعة أرقام عشوائية معا. RandomCode.Append (Strrrand) ؛ } // احفظ رمز التحقق المكون من أربعة أرقام في الجلسة. جلسة httpsession = req.getSession () ؛ Session.setAttribute ("ValidateCode" ، RandomCode.ToString ()) ؛ // ذاكرة التخزين المؤقت الصورة محظورة. Resp.Setheader ("pragma" ، "no-cache") ؛ Resp.Setheader ("Cache-Control" ، "No Came") ؛ Resp.SetDateHeader ("Expires" ، 0) ؛ Resp.SetContentType ("Image/JPEG") ؛ // إخراج الصورة إلى دفق إخراج servlet. servleToutPutStream SOS = resp.getOutputStream () ؛ Imageio.write (Buffimg ، "JPEG" ، SOS) ؛ sos.close () ؛ العودة لاغية. }}هذا الرمز هو الطريقة الأساسية لإنشاء صور التحقق.
ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع. يمكنك أيضًا الاطلاع على المقالة السابقة للدراسة المتعمقة.