Aus der kleinen Demo im vorherigen Abschnitt haben wir herausgefunden, wie man sich mit dem Zahlungsprozess von Yibao und Yibao verbindet. Lassen Sie uns in diesem Abschnitt die Zahlungsseite durchführen und die Banksymbole in die Seite importieren.
1. Store Bank Icon
Bank -Symbole laden im Allgemeinen nicht immer, weil diese Dinge tot sind. Es ist nicht erforderlich, Bankensymbole jedes Mal zu laden, wenn Sie die Zahlungsseite eingeben, damit die Leistung bis zu einem gewissen Grad beeinträchtigt wird. Dies erinnert uns an das vorherige Laden von Homepage -Daten. Tatsächlich ist es das gleiche. Wir können die Banksymbolressource in die Anwendung laden, wenn das Projekt gestartet wird. Danach kann es direkt in der Anwendungsdomäne verwendet werden. Wie zuvor laden wir das Banksymbol im Hörer.
Der Beamte des Bank -Symbols Yibao wird uns mit der Basis dieser Symbole in einen Ordner unter das Projekt versetzen. Ich habe sie in Webroot/Dateien/Bankimages platziert. Die Namen dieser Ikonen werden nach den von Yibao geforderten offiziellen Namen streng benannt. Wie im vorherigen Abschnitt zu sehen ist, hat ICBC es ICBC-net.gif genannt.
Die Idee des Ladens Symbole ist wie folgt:
1) Holen Sie sich zunächst die Namen aller Symbole aus dem angegebenen Verzeichnis und filtern Sie unnötige Dateien heraus. Diese Filterung ist sehr wichtig, da wir sie alle erhalten haben, wenn einige zusätzliche Dateien oder versteckte Dateien vorhanden sind, und dann werden einige seltsame Dinge angezeigt, wenn die Rezeption sie anzeigt, sodass wir nur nützliche Symbole haben.
2) Zweitens, nachdem wir die Symbolnamen erhalten haben, haben wir sie in ein Array oder eine Sammlung gesteckt und dann das Array oder die Sammlung im Anwendungsfeld gespeichert, ist es offensichtlich. Der zweite Schritt wird im Hörer implementiert. Der erste Schritt ist, dass wir selbst eine neue Werkzeugkurs schreiben können oder sie in der von uns zuvor geschriebenen Datei -Oploadil -Klasse vervollständigen können.
1.1 Holen Sie sich den Symbolnamen
Wir fügen den Code hinzu, um den Symbolnamen in FileUploadutil zu erhalten:
@Component ("FileUpload") public class FileUploadUtil implementiert FileUpload {// Der ursprüngliche Code weglassen ... //@Wert bedeutet, in der Datei beans.xml nach den Beans zu suchen. Es liest die Eigenschaftenkonfigurationsdatei über Annotation und liest dann @Value ("#{prop.basepath+prop.bankimagePath}") private String bankimagePath; public String [] getBankImage () {String [] list = new Datei (banimagePath) .List (new FileNameFilter () {// testen Sie, ob die angegebene Datei in eine Dateiliste aufgenommen werden sollte @Override public boolean Accept (Datei -Dire, String -Name) {System.out.Println ("DIRE:" + DIREL +. In die Liste setzen, false zurückgeben und den Rücksendamen herausfiltern. Rückgabeliste; }Wir laden die Konfigurationsdatei öffentlich.Properties und schauen Sie sich den Inhalt in der Konfigurationsdatei an:
Basepath = e/: //web//apache-tomcat-8.0.26//webapps//e_shoopfilepath=//filesbankimagepath=//files//bankimages
Der Grund für einen Basispath besteht darin, die Expansion zu erleichtern, und der Basispath muss nicht bewegt werden, wenn sie in Zukunft modifiziert werden. Schauen wir uns die obige Methode weiter an. Die neue Datei (Pfad) .List () besteht darin, alle Dateinamen in den Pfad zu erhalten, aber die neue Datei (Pfad) .List (DateinameFilter -Filter) hat eine Filterfunktion, mit der unerwünschte Dateien herausgefiltert und nur die gewünschten Dateien in das Array zurückgegeben werden können. Es gibt nur eine Akzeptanzmethode in der DateinameFilter -Schnittstelle, sodass wir interne Klassen verwenden können, um sie zu implementieren und zu beurteilen, ob es sich um eine Datei mit .gif -Suffix handelt.
1.2 Speichern Sie den Symbolnamen in das Anwendungsfeld
Im Folgenden speichern wir die Auswahl an Symbolnamen, die gerade im Anwendungsfeld im Hörer gespeichert sind. Diese Methoden wurden bereits vorgestellt, daher werde ich sie nicht mehr erklären. Schauen wir uns den Code einfach an:
//@component // Listener ist eine Komponente der Webschicht. Es wird durch Tomcat instanziiert, nicht von Frühling. Kann nicht in die Frühling Public Class initdatalistener implementiert werden servletContextListener {// andere Codes weglassen ... private applicationContext context = null; private FileUpload FileUpload = null; @Override public void contextInitialized (servletConteEvent event) {context = webapplicationContextutils.getWebApplicationContext (Event.getServletContext ()); // Legen Sie die Array -Speichern von Bankbildern in die Anwendung ein und laden Sie FileUpload, wenn das Projekt startet = (FileUpload) context.getBean ("FileUpload"); Event.GetServletContext (). setAttribute ("bankimagelist", FileUpload.getBankImage ()); }}2. Zahlungsseite Anzeige
Schauen wir uns den Code von Bank.jsp über das Bank -Symbol wie folgt an:
Ein weiteres Stück zeigt die relevanten Informationen der Bestellung. Aus dem folgenden Code ist auch ersichtlich, dass wir die Bestellinformationen übernommen haben, die wir zuvor von der Sitzung zurückgezogen hatten. Die ursprünglichen Informationen wurden zerstört, als der Benutzer die Bestellung bestätigte, zur Zahlungsseite zu springen.
3. Testen Sie den Effekt
Testen wir den Anzeigeffekt der Zahlungsseite wie folgt:
Okay, auf der Zahlungsseite wird normalerweise angezeigt. Die Zahlungsfunktion ist nachstehend abzuschließen, dh die im vorherigen Abschnitt geschriebene Demo mit Servlet. Es wird jedoch jetzt in Streben gesteckt, und einige andere Probleme können berücksichtigt werden. Schreiben wir es im nächsten Abschnitt.
Original -Link: http://blog.csdn.net/eson_15/article/details/51452243
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.