Heim > Artikel > Web-Frontend > Wie DWR Ajax implementiert
Der Inhalt dieses Artikels handelt davon, wie DWR Ajax implementiert. Jetzt kann ich ihn mit Ihnen teilen.
1, Einführung in Ajax.
AJAX = Asynchrones JavaScript und XML.
AJAX ist keine neue Programmiersprache, sondern eine neue Art, bestehende Standards zu nutzen.
Der größte Vorteil von AJAX besteht darin, dass es Daten mit dem Server austauschen und einen Teil des Webseiteninhalts aktualisieren kann, ohne die gesamte Seite neu laden zu müssen.
AJAX erfordert keine Browser-Plug-Ins, erfordert jedoch, dass der Benutzer die Ausführung von JavaScript im Browser zulässt.
2. Einführung in DWR
1. Offizielle Website-Adresse http://directwebremoting.org
2. DWR ist Easy Ajax für Java. DWR (Direct Web Remoting) ist ein serverseitiges Ajax-Open-Source-Framework zur Verbesserung der Interaktion zwischen Webseiten und Java-Klassen. Es kann Entwicklern bei der Entwicklung von Websites mit AJAX-Technologie helfen. Dadurch kann Code im Browser JAVA-Funktionen verwenden, die auf dem WEB-Server ausgeführt werden, als ob er sich im Browser befände.
3. Code-Implementierung
1. Jar-Paket-Download
aber Die Gesamtgröße beträgt weniger als 1 Million, sodass der Download nicht lange dauert.
Download-Adresse:https://github.com/directwebremoting/dwr/releases/download/3.0.2-RELEASE/dwr.jar
2. Dwr konfigurieren
(1) Das Erstellen eines Webprojekts mit Eclipse oder Myeclipse wird hier nicht wiederholt. Bitte beachten Sie, dass es am besten ist, die Datei web.xml anzuzeigen, da diese später verwendet wird.
(2) Erstellen Sie die Datei dwr.xml im WEB-INF-Verzeichnis. Dies ist die Konfigurationsdatei von DWR. Der Code in der Konfigurationsdatei lautet wie folgt: Es ist im Allgemeinen nicht erforderlich, andere Stellen zu ändern. Es ist zu beachten, dass die „Demo“ hier mit javascript="Demo" benannt werden kann 🎜> Es gibt auch value=" cn.smileyan.cy.Cyservice", der auch von Ihnen selbst geändert werden kann. Achten Sie auf die Eins-zu-eins-Korrespondenz mit dem src-Verzeichnis. Das heißt, ich habe eine Klasse namens Cyservice im Paket cn.smileyan.cy. Diese Klasse ist die Schlüsselklasse für Ajax-Methoden zur Kommunikation mit dem Hintergrund.
(3) DWR-Konfiguration zu web.xml hinzufügen
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 3.0//EN" "http://getahead.org/dwr/dwr30.dtd"> <dwr> <allow> <create creator="new" javascript="Demo" scope="application"> <include method="get"/> <param name="class" value="cn.smileyan.cy.Cyservice"/> </create> </allow> </dwr>
3. Front-End-Code
<servlet> <display-name>DWR Servlet</display-name> <servlet-name>dwr-invoker</servlet-name> <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class> <init-param> <param-name>debug</param-name> <param-value>true</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>dwr-invoker</servlet-name> <url-pattern>/dwr/*</url-pattern> </servlet-mapping>
Besondere Erinnerung, muss auf den Skriptcode von DWR achten, denken Sie daran, Demo.js zu entsprechen
4. JAVA-Code
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Insert title here</title> <script type="text/javascript" src="dwr/engine.js"></script> <script type="text/javascript" src="dwr/util.js"></script> <script type="text/javascript" src="dwr/interface/Demo.js"></script> <script> function doTest(){ Demo.get(callback); /*此处.get对应的是Java类中的方法*/ } var callback = function dddddddd(data){ dwr.util.setValue("demo",data); } </script> </head> <body> <input type="button" value="time" onClick="doTest()"/> <input type="text" id="demo" size="40"> </body> </html>
5. Ausführen und dann auf die Schaltfläche klicken, um den Effekt zu sehen
package cn.smileyan.cy; public class Cyservice { public String get(String str) { return "Hello DWR !"; } }
4. Zusammenfassung
Dieses Beispiel ist sehr einfach, Dies ähnelt jedoch dem einfachen js. Die Implementierung des Ausblendens und Anzeigens ist unterschiedlich, da dadurch Java-Code tatsächlich in js-Code konvertiert wird, dh die Cyservice-Klasse entspricht Demo.js und die Demo.get-Methode ruft tatsächlich die get-Methode auf des Cyservice-Objekts.
Der Vorteil davon besteht darin, dass es mit dem Hintergrund interagieren kann, ohne zu springen, was das Benutzererlebnis erheblich verbessert.
Verwandte Empfehlungen:
DWR implementiert AJAX-Lernen
Die subtile Beziehung zwischen DWR und AJAX
Sofortnachrichten im B/S-Modus unter Verwendung des Ajax-Frameworks DWR zur Implementierung
DWR-Framework-Erfahrung (Erzielung eines Ajax-basierten No-Refresh-Effekts)
Das obige ist der detaillierte Inhalt vonWie DWR Ajax implementiert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!