Dieses Beispiel teilt den spezifischen Code des Java -Implementierungs -Anmeldeverifizierungscodes für Ihre Referenz auf. Der spezifische Inhalt ist wie folgt
1.. ValidateCode.java
Import Java.awt.Color; Import Java.awt.font; Import Java.awt.graphics; Import Java.awt.image.BuffeedImage; Import Java.io.ioException; import Java.io.IO.OutputStream; Import Java.util.rand.image. org.springFramework.stereotype.service;/*** Login -Verifizierungscode**/public class validateCode {/*** das Überprüfungscode -Bild* @param out* @param nummer verifizieren die nummer* @throws servletException* @throws ioException*/public void -void -void -void (outputStream). Erstellen Sie ein leeres Bild BufferedImage Image = new bufferedImage (100,30, bufferedimage.type_int_rgb); // 1. Holen Sie sich die Bildbürstengrafik g = image.getGraphics (); Random r = neu random (); // 2. Setzen Sie die Pinselfarbe (NextInt (n) in der Zufallsklasse gibt eine Zufallszahl mehr oder gleich 0 und weniger als n) G.SetColor zurück (neue Farbe (R.Nextint (255), R.Nextint (255), R.Nextint (255)); // 3. Zeichnen Sie den Hintergrund des Rechtecks G.FillRect (0, 0, 100, 30); // 4. Rufen Sie eine benutzerdefinierte Methode auf, um die Zeichenfolge alphanumerischer Kombinationen von Länge 4 G.SetColor (neue Farbe (0,0,0)) zu erhalten. G.SetFont (neue Schriftart (NULL, FONT.BOLD, 24)); // 5. Zeichnen Sie nach dem Einstellen der Farbschrift die Zeichenfolge (x/y, die Position des linken Zeichens) G.Drawstring (Zahl, 20, 24); // 6. Zeichnen Sie 8 Interferenzlinien (Alpha bedeutet Transparenz) für (int i = 0; i <8; i ++) {G.SetColor (neue Farbe (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)); } Imageio.write (Bild, "jpeg", out); } // benutzerdefinierte Methode, um die Zeichenfolge der alphanumerischen Kombinationen von Längengröße public String GetNumber (int Größe) {String str = "abcdefghijklmnopqrstuvwxyz0123456789" zu erhalten; String number = ""; Random r = neu random (); für (int i = 0; i <size; i ++) {number+= str.charat (r.Nextint (str.length ())); } Rückgabenummer; }}2. Controller
@RequestMapping (value = "/check",method= requestMethod.get}) @ResponseBody public void check (httpServletRequest req) {try {httpServletResponse Response = this.getResponse (); response.setContentType ("Anwendung/Oktett-Stream"); response.addHeader ("Inhaltsdisposition", "Anhang; Dateiname =" + "vcode.jpeg"); String number = validateCode.getNumber (4); validateCode.getImage (response.getOutputStream (), Nummer); } catch (Ausnahme e) {}}3. Html
<img src = "http://127.0.0.1:8080/test/check">
Reproduktionsdiagramm
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.