Artikel ini membagikan kode spesifik Kode Verifikasi Login Implementasi Java untuk referensi Anda. Konten spesifiknya adalah sebagai berikut
1. ValidateCode.java
impor java.awt.color; impor java.awt.font; impor java.awt.graphics; impor java.awt.image.bufferedImage; impor java.io.ioException; impor java.io.outputstream; impor java.util.random; impor. org.springframework.stereotype.service;/*** Kode verifikasi login**/kelas publik validatecode {/*** Dapatkan gambar kode verifikasi* @param out* @param Nomor verifikasi nomor* @throws servletException* @throws ioException*/getimage public void (outputScepception. Buat gambar BufferedImage kosong kosong = BufferedImage baru (100,30, bufferedImage.type_int_rgb); // 1. Dapatkan gambar grafis kuas g = image.getGraphics (); Acak r = acak baru (); // 2. Atur warna kuas (nextInt (n) di kelas acak mengembalikan angka acak lebih besar dari atau sama dengan 0 dan kurang dari n) g.setColor (warna baru (r.nextint (255), r.nextint (255), r.nextint (255))); // 3. Gambarlah latar belakang persegi panjang G.Fillrect (0, 0, 100, 30); // 4. Hubungi metode khusus untuk mendapatkan string kombinasi alfanumerik dengan panjang 4 g.setColor (warna baru (0,0,0)); g.setfont (font baru (null, font.bold, 24)); // 5. Setelah mengatur font warna, gambar string (x/y, posisi karakter paling kiri) g.drawstring (angka, 20, 24); // 6. Gambar 8 garis interferensi (alfa berarti transparansi) untuk (int i = 0; i <8; i ++) {g.setColor (warna baru (r.nextint (255), r.nextint (255), r.nextint (255), r.nextint (255)))); G.Drawline (r.nextint (100), R.nextint (30), R.Nextint (100), R.NextInt (30)); } Imageo.write (gambar, "jpeg", out); } // Metode khusus untuk mendapatkan string kombinasi alfanumerik dari ukuran panjang string publik getNumber (ukuran int) {string str = "abcdefghijklmnopqrstuvwxyz0123456789"; String number = ""; Acak r = acak baru (); untuk (int i = 0; i <size; i ++) {number+= str.charat (r.nextint (str.length ())); } nomor pengembalian; }}2. Pengontrol
@RequestMapping (value = "/check",method= {RequestMethod.get}) @ResponseBody public void check (httpservletRequest req) {coba {httpservletResponse response = this.getResponse (); response.setContentType ("Application/Octet-stream"); response.addheader ("disposisi konten", "lampiran; fileName =" + "vcode.jpeg"); Nomor string = validateCode.getNumber (4); validateCode.getImage (response.getoutputStream (), angka); } catch (Exception e) {}}3. Html
<img src = "http://127.0.0.1:8080/test/check">
Diagram reproduksi
Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.