FH-Hof Sockets in Java Richard Göbel. FH-Hof Kommunikation über das Internet - Grundlagen Ein Rechner wird im Internet über die so genannte IP- Adresse.

Slides:



Advertisements
Ähnliche Präsentationen
programmiert April-Juni 2003 von Knut Riechmann
Advertisements

der Universität Oldenburg
DVG Dateien Dateien. DVG Dateien 2 Die Klasse File Die Klasse File stellt die Verbindung zwischen dem Filesystem des Rechners und dem.
Imperative Programmierung -Entwicklungswerkzeuge
Programmierkurs Java WS 98/99 Vorlesung 15 Dietrich Boles 17/02/99Seite 1 Programmierkurs Java Vorlesung im WS 1998/1999 am FB Informatik der Universität.
Prof. Dr.-Ing. habil. B. Steinbach - Informatik / Softwaretechnologie und Programmierungstechnik - Institut für Informatik Verteilte Software - Java -
Prof. Dr.-Ing. habil. B. Steinbach - Informatik / Softwaretechnologie und Programmierungstechnik - Institut für Informatik F Verteilte Software - Java.
Prof. Dr.-Ing. habil. B. Steinbach - Informatik / Softwaretechnologie und Programmierungstechnik - Institut für Informatik Verteilte Software - Java -
Internetzugriff mit Strings und Streams
10 Streams JavaHS Merseburg WS 05/06 E/A - Ströme (Streams) in Java.
Ausnahmen HS Merseburg (FH) WS 06/07.
Java News & Music Der Chat
Daten Anzeigen und Ausdrucken Zu Zeigende Daten (z.B. Studentenplan) Daten in XML müssen geparst und in PDF- Format umgewandelt werden. Dazu iTEXT Bibliothek.
Threads Richard Göbel.
Java: Objektorientierte Programmierung
Listen Richard Göbel.
FH-Hof Servlets Richard Göbel. FH-Hof Konzept Servlets werden auf der Server-Seite durch ein Formular aufgerufen werten die Eingaben aus einem Formular.
Indirekte Adressierung
FH-Hof Verwaltung von Zeichenketten Richard Göbel.
Java: Grundlagen der Sprache
Java: Referenzen und Zeichenketten
Java: Grundlagen der Objektorientierung
FH-Hof Fehlerbehandlung Richard Göbel. FH-Hof Konzept Fehler können mit dem Operator throw einer übergeordneten Funktion signalisiert werden. Parameter.
SWITCH - Anweisung.
Verzweigung oder bedingte Anweisung Weiter mit PP.
IF-ELSE-IF-Ketten Weiter mit PP..
Assoziationen (Beziehungen) 1 : n. Zu einem Auto gibt es mehrere Fahrer (2) und zu diesen 2 Fahrern gibt es genau dieses Auto.
WHILE - Anweisung. Aufgabe : Ausgabe aller ganzen Zahlen von 0 bis 100 auf dem Bildschirm.
FOR Anweisung. Aufgabe : Ausgabe aller ganzen Zahlen von 0 bis 100 auf dem Bildschirm.
DO...WHILE Anweisung.
ARRAY oder FELD oder VEKTOR
Projektplan: Fachgebiet Software Engineering Übersicht © Albert Zündorf, Kassel University.
1DVG3 - anonyme Klassen Anonyme Klassen. DVG3 - anonyme Klassen 2 Syntax new BasisKlasse(Parameterliste) { Modifikationen und Erweiterungen der Basisklasse.
DVG Ausnahmen1 Ausnahmen. DVG Ausnahmen 2 Was sind Programmfehler? Programm erzielt gar kein Ergebnis. Berechnetes Ergebnis stimmt nicht.
DVG Einführung in Java1 Einführung in JAVA.
EDV Parallelprogrammierung1 Parallelprogrammierung mit JAVA.
Java in 9 Folien Besser: Online-Buch Go to Java 2.
© 2005 Pohlig - Taulien Datenströme GK Informatik 1 Datenströme.
Bestimmung des ggT zweier Zahlen
Verzweigung.
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
FH-Hof Singleton Pattern Richard Göbel. FH-Hof Motivation Bestimmte Klassen sollen nur ein Objekt haben Nur ein Fabrikobjekt für eine Fabrikklasse Zentraler.
Rekursive Funktionen (Fakultät)
Learning By Doing TCP/IP Netzwerke mit TCP/IP Das Internet verwendet weitgehend das rund 30-jährige TCP/IP-Protokoll (TCP: Transmission Control Protocol,
Socket-Programmierung
Copyright 2007 Bernd Brügge, Christian Herzog Grundlagen der Programmierung TUM Wintersemester 2007/08 Kapitel 10, Folie 1 2 Dr. Christian Herzog Technische.
Netzwerkprogrammierung
Praxis der Internet-Programmierung
CuP - Java Eingabe über Tastatur, AudioClips, überschreiben, Quiz Montag, 18. November 2002.
Objektorientiertes Konstruieren
Unterprogramme in JAVA
Optimale Ursprungsgerade
Learning By Doing Ausnahmebehandlung Exceptions (Ausnahmebehandlung) Typische Fehlverhalten zur Laufzeit: s. Buch S. 287ff -Verwendung von null-Objekten.
Programmierung von Agenten in Java: Implementierung einer Supply-Chain
Java Thread Scheduling Jin Zhou Proseminar Java Thread Scheduling November 2000.
Javelin Internet-based parallel computing using Java.
Hauptseminar 2001 „Parallele Programmierung in Java“ - JPVM- Java Parallel Virtual Machine Referent: Sebastian Steininger.
Programmiervorkurs WS 2014/15 Methoden
Programmiervorkurs WS 2014/15 Schleifen
Voyager Eigenschaften/Vorzüge Universalität: –ROI-Modelle: CORBA, RMI, DCOM –verschiedene Namens-, Verzeichnisdienste Nachrichtentypen: synchron, oneway,
CuP - Java Achte Vorlesung Entspricht ungefähr Kapitel 4.1 des Skriptums Montag, 28. Oktober 2002.
3. Beschreibung von Abläufen durch Algorithmen 3.4 Zufall
Natürliches Programmieren
Alois Schütte Advanced System Programming 2 Interprozeßkommunikation  2.1 JVM Ablaufumgebung  2.2 Java Native Interface (JNI)  Verwendung von.
© 2004 Pohlig Informatik Kurse © 2004 Pohlig Informatik Kurse Der Tramp tanzt die Rekursion zünderUntersuchen(…) Basisfall Rückmeldung:
OOP mit Java Oder: Java in 5 Tagen. 1. Tag Klassen und Methoden Hello World in Variationen Von Menschen und Geschlechtern Horden (Schlange stehen)
Dynamische Webseiten CGI & co. © CGI - Lösung für alle ? Ja CGI kann alles tun, was man für Anwendungen braucht flexibel (beliebige.
Mit der Turtle Java Programmieren
Grundkurs Informatik mit Java
Tutorstunde 10.
 Präsentation transkript:

FH-Hof Sockets in Java Richard Göbel

FH-Hof Kommunikation über das Internet - Grundlagen Ein Rechner wird im Internet über die so genannte IP- Adresse angesprochen numerische Adresse: symbolische Adresse: pid.da.op.dlr.de Ein Programm auf einem Rechner wird über die Nummer eines so genannten Ports angesprochen. Für die Kommunikation richtet ein Programm einen Socket (Steckdose) ein. Die Kommunikation über Sockets ist asymmetrisch: Ein Server wartet auf einen Client Ein Client baut eine Verbindung zu einem Server auf

FH-Hof Kommunikation über das Internet - Das Socket-Konzept Server ServerSocket erzeugen und auf Verbindung warten. Einen weiteren Socket für jeden Client erzeugen. Ein- und Ausgabestreams für den Socket öffnen. Je nach Bedarf lesen und schreiben. Streams schließen. Client Socket zur Verbindung mit dem Server erzeugen. Ein- und Ausgabestreams für den Socket öffnen. Je nach Bedarf lesen und schreiben. Streams schließen.

FH-Hof Kommunikation über das Internet - Beispiel für einen Server public class TestServer { public static void main(String[] args) throws IOException { ServerSocket seSocket = new ServerSocket(1704); Socket clSocket = seSocket.accept(); PrintStream out = null; BufferedReader in = null; out = new PrintStream(clSocket.getOutputStream()); in = new BufferedReader( new InputStreamReader( clSocket.getInputStream())); String inputLine = in.readLine(); System.out.println(inputLine); out.close(); in.close(); clSocket.close(); seSocket.close();}}

FH-Hof Kommunikation über das Internet - Beispiel für einen Client public class TestClient { public static void main(String[] args) throws IOException, UnknownHostException { Socket socket = new Socket(MyServer,1704); PrintWriter out; BufferedReader in; out = new PrintWriter(socket.getOutputStream()); in = new BufferedReader( new InputStreamReader( socket.getInputStream())); out.println("Hello World!"); out.flush(); out.close(); in.close(); socket.close();}}

FH-Hof Implementierung einer Testverbindung

FH-Hof Szenario für die Kommunikation Client 1Client 2Server 2,2 5,2 Das Ende des Spiels wird von jeder Komponente selbstständig erkannt!

FH-Hof Ablauf der Kommunikation aus der Sicht des Clients Hauptprogramm (Thread I)... wartet auf Eingabe des Benutzers übertragt Eingabe an Server wartet auf den Gegenzug MouseListener (Thread II)... liefert Eingabe des Benutzer

FH-Hof Ablauf in Java Hauptprogramm synchronized void doGame () {... = this;... wait();....writeInt(... );.flush();.writeInt(... );.flush();... } MouseListener... synchronized ( ) {....notify();... }

FH-Hof Client implementieren