In diesem kleinen Projekt sollen lediglich die Grundlagen gezeigt werden, wie eine Websocket Verbindung aufgebaut werden kann. Als kleines Beispiel dafür wird eine minimale Chat-Website aufgebaut. Über diese Seite können dann Nachrichten versendet werde. Der Fokus liegt dabei auf "Keep it Simple".
Der gesamte Quellcode ist über Bitbucket erreichbar: Clone Repository
Kleine Erläuterungen:
Da der gesamte Quellcode offen steht wird hier nur auf ein paar kleine Dinge kurz eingegangen.
Wo finde ich was und wozu bruache ich es:
Dateiname |
Pfad |
Wozu/Was wird hier gemacht |
Application.java | src/ main/ java/ main | Start der Spring Application |
WebSocketConfig.java | src/ main/ java/ main/ configuration |
Hier wird die eigentliche Websocketverbindung konfiguriert //Stelle einen Kanal zur Verfügung, über diesen kommuniziert wird. Am besten in die app.js reinschauen, woriauf sich der Client Verbindet und welchen Kanal dieser Abnoniert(subscripe). Dann wird dieses Klasse etwas klarer. |
ChatController.java | src/ main/ java/ main/ controller |
Einfacher Controller, der eine Nachricht empfängt, diese auf der Konsole ausgibt und wieder zurücksenset. Durch das Zurücksenden auf den Kanal wird sichergestellt, das alle Clints die diesen Kanal aboniert ahebn, diese NAchricht auch erhalten. @MessageMapping("/hello") //recieved message from |
ChatMessage.java | src/ main/ java/ main/ hello | Einfaches Domain Objekt damit Java die Empfangenen JSON Pakete auf ein Objekt Mappen kann. |
Client Seite |
||
app.js | /src/ main/ resources/ static |
Hier ist die Client-Seite realisiert. Wirklich interresant ist dabei lediglich die connect Funktion. Hier wird eine WebsocketVerbindung hersgestellt und ein Kanal Aboniert. function connect(){ Alle anderen Funktionen sind recht klein und deren Namen erläutern deren Funktion. |
index.html | /src/ main/ resources/ static | Einfache HTML Seite zum Anzeigen des Chates ;-) |
Sowiet so gut. Das war es auch schon. Einfach das Projekt Klonen, bauen und die *.jar Datei ausführen. Die Anwendung starten auf den Port 8080. Wem das zu viel ist, kann die fertige JAR Datei auch direkt Downloaden. Zum starten:
java -jar [PFAD/ZUR/JAR/DATEI].jar
Have Fun.