In diesem Artikel wird hauptsächlich die Zusammenfassung der Schritte zum Generieren von Bestätigungscode in Java im Detail vorgestellt
1 Der Serialisierungsmechanismus von Java überprüft die Versionskonsistenz, indem er zur Laufzeit die serialVersionUID der Klasse ermittelt.
private static final long serialVersionUID = -8501285780349046114L;
Es entspricht der Java-ID-Karte. Wird hauptsächlich zur Versionskontrolle verwendet.
2. BufferedImage-Klasse
– Die BufferedImage-Unterklasse beschreibt ein Bild mit einem zugänglichen Bilddatenpuffer.
TYPE_INT_RGB
Stellt ein Bild dar, das 8-Bit-RGB-Farbkomponenten enthält, die in ganzzahlige Pixel synthetisiert wurden.
——getGraphics()
Diese Methode gibt Graphics2D zurück, dies geschieht jedoch aus Gründen der Abwärtskompatibilität.
3. request.getParameter()
Die von der Methode request.getParameter() übergebenen Daten werden vom Web-Client an den Webserver übergeben , stellt HTTP-Anforderungsdaten dar.
Die Methode request.getParameter() gibt Daten vom Typ String zurück.
4. String...
excludeProperty stellt variable Parameter dar, d. h. beim Aufruf dieser Methode können mehrere String-Objekte übergeben werden (variable Parameter: geeignet, wenn die Anzahl der Parameter ungewiss ist). , wenn der Typ bestimmt wird, behandelt Java die variablen Parameter als ArrayHinweis: Die variablen Parameter müssen im letzten Element sein, z. B.: private String drawRandomNum(Graphics2D g,String... createTypeFlag))
5. Grafikklasse
Die Grafikklasse ist die abstrakte Basisklasse für alle Grafikkontexte und ermöglicht es Anwendungen, Operationen an Komponenten (die bereits auf verschiedenen Geräten implementiert sind) und außerhalb auszuführen. Bildschirmbilder zeichnen.
【Schritte】:
1. Erstellen Sie ein Bild im Gedächtnis;
——Die BufferedImage-Unterklasse beschreibt ein Bild mit einem zugänglichen Bilddatenpuffer.
BufferedImage bi = new BufferedImage(WIDTH,HEIGHT,BufferedImage.TYPE_INT_RGB);
TYPE_INT_RGB Stellt ein Bild dar, das 8-Bit-RGB-Farbkomponenten enthält, die in ganzzahlige Pixel synthetisiert wurden.
——getGraphics()
2. Holen Sie sich das Bild;
3. Stellen Sie die Hintergrundfarbe des Bildes ein; 🎜> 4. Legen Sie den Rand des Bildes fest.
Graphics g = bi.getGraphics();
5. Zeichnen Sie Interferenzlinien auf das Bild das Bild;
setBackGround(g);
7. Speichern Sie die Zufallszahl in der Sitzung
setBorder(g);
8. Legen Sie den Antwortheader fest, um den Browser zu benachrichtigen, ihn zu öffnen als Bild;
drawRandomLine(g);
9. Stellen Sie den Antwortheader so ein, dass der Browser nicht zwischengespeichert wird.
String random = drawRandomNum((Graphics2D) g,createTypeFlag);//根据客户端传递的createTypeFlag
——setDateHeader name – der Name des Headers set
request.getSession().setAttribute("checkcode",random);date – der zugewiesene Datumswert
response.setContentType("image/jpeg");//等同于res[onse.setHeader("Content-Type","image/jpeg");
response.setDateHeader("expries",-1); response.setHeader("Cache-Control","no-cache"); response.setHeader("Pragma","no-cache");Parameter:
public void setDateHeader(java.lang.String name,long date)
Name – der Name des Headers
Wert – der Header-Wert Wenn er eine Oktettzeichenfolge enthält, sollte er gemäß RFC 2047 codiert werden (http://www.ietf.org/ rfc/rfc2047.txt)
10. Schreiben Sie das Bild in den Browser
public void setHeader(java.lang.String name, java.lang.String value)
im – das RenderedImage, das geschrieben werden soll.
formatName – Zeichenfolge, die den informellen Namen des Formats enthält.
IOException – wenn beim Schreiben ein Fehler auftritt.
Das obige ist der detaillierte Inhalt vonAnalyse detaillierter Schritte zum Generieren von Bestätigungscode in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!