Next previous Innehåll Inledning Några enkla exempel Pekare till och kort beskrivning av större exempel Speciella referenser (som används i marginalen)

Slides:



Advertisements
Liknande presentationer
Avlusning Debugger (”avlusare”) Breakpoints Watch.
Advertisements

Array Skriv ett program som frågar följande: ”Hur många tal vill du mata in?” användaren matat in ett tal t.ex n. då frågar programmet n ggr följande.
Imperativ Programmering
Next previous Internetprogrammering 2000 Internetprogrammering 2000 Föreläsning 10 Distribuerad programmering med Javas RMI, Remote Method Invocation.
Next previous Innehåll Klassen URL Arbeta med URLer, exempel Referenser Harold,”Java Network Programming”, Elliotte Harold Hall, "CORE Web Programming"
2I1070 Lektion 2 KTH-MI Peter Mozelius Servlets och databaskopplingar.
1 ITK:P2 F9 HTTP, Java servlets och Apache Tomcat DSV Peter Mozelius.
Filhantering Grundprincipen för filhantering Öppna filen
Metoder i java Det finns två typer av metoder i java
Nätverkskommunikation
Välkommen Vahid Mosavat
Programmeringsteknik för K och Media
Programkodens uppbyggnad
Att programmera i språket Java
Föreläsning 5 Python: argument från kommando-tolken
Föreläsning 2 Primitiva datatyper Variabler och konstanter Tilldelning Inläsning Operatorer Villkorssatsen if Slingor: while och for.
Next previous Lite mer om CGI-programmering Innehåll Vad är CGI? Vad är Forms? Vad är Perl? Forms, CGI och Perl. Något om Cookies. Internetprogrammering.
Next previous Innehåll Klassen URL Arbeta med URLer, exempel Speciella referenser (som används i här) Harold, dvs kursboken ”Java Network Programming”
Next previous Lite mer om CGI-programmering Innehåll Vad är CGI? Vad är Forms? Vad är Perl? Forms, CGI och Perl Internetprogrammering F 14 Läs också: Kursboken.
Next previous Innehåll Inledning Några enkla exempel Pekare till och kort beskrivning av större exempel Speciella referenser Harold, dvs boken ”Java Network.
Strömmar Vid läsning och skrivning används något som kallas strömmar.
Java Nätverks API URL sockets.
Next previous Introduktion till Java Av Björn Eiderbäck Adress: Rum 1641, 6tr NADA Osquars Backe 2 Tel: OOMPAE 2000.
Streams and File I/O Kapitel 10. Agenda Exceptions Textfiler Skriva Appenda Läsa File Sökvägar.
OOP F4:1 Marie Olsson OOP Objekt-orienterad programmering Föreläsning 4 Metoder klass-metoder instans-metoder.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 6 ( ) INNEHÅLL: -Mera om tabeller.
1 1 Musikprogrammering och mobil ljuddesign Föreläsning 4 Kommunikation över nätverk – UDP och MaxMSP.
Next previous CORBA: vad, varför, hur? Innehåll Datornätverk Behov och krav CORBA Historik, principer, arkitektur och beståndsdelar Exempel i Java Internetprogrammering.
1 ITK:P1 Föreläsning 7 Algoritmer och datastrukturer DSV Marie Olsson.
Objektorienterad Modellering Programmering och Analys
OOP Objekt-orienterad programmering
Programmeringsteknik för Media1 & K1
Mitt första Java program Mahmud Al Hakim Copyright, Mahmud Al Hakim, 1.
OOP F3:1 Marie Olsson OOP Objekt-orienterad programmering Föreläsning 3 Iteration Många variabler av samma sort – Arrayer.
Servlets — Java på serversidan. previous next 2 Servlets Introduktion Javaservlets är en i raden av SUN:s många tillämpningar av Java. Servlets kan grovt.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 7 ( ) INNEHÅLL: -Metoder -Lokala variabler -Mera om klasser: -Nyckelorden.
Föreläsning 14 ”Enkel” Filhantering.
Java servlets och databaskopplingar
Föreläsning 10 Stränghantering.
Next previous RMI, Remote Method Invocation Om du har boken av Marty Hall, läs avsnitt 15.8 För fler exempel se:
Föreläsning 1 Reserverade ord Javas API Identifierare Litteraler Variabler Kompilering och interpretering.
Abelli, B. (2004). Programmeringens Grunder – med exempel i C#. Lund: Studentlitteratur 11 C# I/O Streams C# använder “strömmar” för in- och utmatningsoperationer.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 5 ( ) INNEHÅLL: -Metoder.
TILLÄMPAD DATALOGI (TILDA) Övning 3
PROGRAMMERINGSTEKNIK Övningsgrupp 3 Marcus Hjelm
Föreläsning 4 programmeringsteknik och Matlab 2D1312/ 2D1305
Föreläsning 1 Om kursen Reserverade ord Javas API Identifierare Litteraler Variabler Kompilering och interpretering.
0. Kod, Klassdiagram och Sekvensdiagram import java.awt.event.*; import javax.swing.*; import java.awt.*; public class TwoThreads implements ActionListener.
INTRODUKTION TILL PROGRAMMERING
PROCESSPROGRAMMERING Föreläsning 1 ( )‏ Innehåll: Introduktion till paralellprogrammering (“concurrent programming”)‏ Introduktion till parallellprogrammering.
Anders Sjögren Filer - långtidslagring. Anders Sjögren Filtyper i DOS talet ett ( intx=1; ) lagrat i en –textfil, (en sekvens av tecken ( bytes )) enligt.
1. Skriv programmet Fetkoll som läser igenom valfri webbsida och skriver ut alla ord och fraser som står med fetstil. I HTML anges det med starttaggen.
Class VattenKraft{ public static void main(String[] args){ int num=150; int i, totflöde, maxflöde; int[] fall = new int[num]; //vattenflödet i vattenfallen.
ITK:P2 F8 Strömmar och filhantering DSV Peter Mozelius.
OOP F13:1 Marie Olsson OOP Objekt-orienterad programmering Föreläsning 13 Repetition variabler, selektion och iteration.
Java Beans
Föreläsning 3 Villkorssatsen if Slingor: while och for Felsökning.
TILLÄMPAD DATALOGI (TILDA) Övningsgrupp 2 Marcus Hjelm
TILLÄMPAD DATALOGI (TILDA) Övning 1 Marcus Hjelm
OOP F5:1 Stefan Möller OOP Objekt-orienterad programmering Föreläsning 5 Klasser och objekt Skapa objekt - new Referenser Konstruktorer Inkapsling.
Övning2 programmeringsteknik och Matlab 2D1312/ 2D1305
Övning 3. Repetition Metoder class RepetitionMetoder { public static void main(String [] args) double längd = 2.0; double bredd = 1.0; double area =
TILLÄMPAD DATALOGI (TILDA) Övning 2
TILLÄMPAD DATALOGI (TILDA) Övning 2
Programmeringsteknik för K och Media
Föreläsning 9 Inläsning och utskrift på fil –SimpleTextFileReader –SimpleTextFileWriter Felsökning Java API.
Föreläsning 7 programmeringsteknik och Matlab 2D1312/2D1305 Metoddeklaration och parametrar Arrayer och ArrayList.
1 Föreläsning 2 Reserverade ord Javas API Identifierare Litteraler Variabler Kompilering och interpretering.
Nätverkskommunikation
10 Kommunikation i Java Skansholm kap 18
Presentationens avskrift:

next previous Innehåll Inledning Några enkla exempel Pekare till och kort beskrivning av större exempel Speciella referenser (som används i marginalen) Harold, dvs kursboken ”Java Network Programming” Tut, dvs tutorial (~kurs) som finns hos SUN på nätet Klient och serverprogrammering Föreläsning 8 Se också Harold kapitel 7-9 samt Tut Se också Harold kapitel 7-9 samt Tut

previous next 2 Socketar Inledning Texten i boken [Harold] och den tutorial som finns på Sun [Tut] är ganska vältäckande i sina beskrivningar av socketer. –Därför kommer detta dokument endast behandla och beskriva ett par enkla exempel med socketar. –Vidare kommer ett lite större exempel som påminner en del om labbuppgiften att beskrivas Exemplet introduceras här men den fullständiga beskrivningen ges i katalogen Detta exempel kommer också att utföras i RMI och CORBA

previous next 3 Socketar Enkelt test import java.io.*; import java.net.*; public class EchoClient { public static void main(String[] args) throws IOException { Socket echoSocket = null; PrintWriter out = null; BufferedReader in = null; try { echoSocket = new Socket(”faun.nada.kth.se", 7); out = new PrintWriter(echoSocket.getOutputStream(), true); in = new BufferedReader(new InputStreamReader(echoSocket.getInputStream()));} catch (UnknownHostException e) { System.err.println("Don't know about host: faun."); System.exit(1);} catch (IOException e) { System.err.println("Couldn't get I/O for the connection to: faun."); System.exit(1); } Ett exempel som ansluter sig till “standardservicen” echo (på port 7) som helt enkelt bara skickar tillbaks den text man skickar till den. Ett exempel som ansluter sig till “standardservicen” echo (på port 7) som helt enkelt bara skickar tillbaks den text man skickar till den. Skapa klient kopplad mot en av NADAs datorer Samt in- och ut- ström Importera klasser för io och nät

previous next 4 Socketar... BufferedReader stdIn = new BufferedReader(new InputStreamReader(System.in)); String userInput; while ((userInput = stdIn.readLine()) != null) { out.println(userInput); System.out.println("echo: " + in.readLine()); } out.close(); in.close(); stdIn.close(); echoSocket.close(); } Ström mot terminalen Så länge som användaren ger input skicka det hela till socketen, läs svaret samt eka det på terminalen

previous next 5 Socketar En klient som ansluter till en server och hämtar angiven URL import java.io.*; import java.net.*; public class HttpClient { public static void main(String[] args) { try { if ((args.length != 1) && (args.length != 2)) throw new IllegalArgumentException("Wrong number of arguments"); OutputStream to_file; if (args.length == 2) to_file = new FileOutputStream(args[1]); else to_file = System.out; Ett exempel med ett klientprogram som ansluter till angiven URL och hämtar innehållet i aktuell fil. Utmatningen sker antingen till given fil eller till terminalen. Ett exempel med ett klientprogram som ansluter till angiven URL och hämtar innehållet i aktuell fil. Utmatningen sker antingen till given fil eller till terminalen. Första argumentet URL:en Andra argumentet eventuell fil dit utmatningen skall ske

previous next 6 Socketar... URL url = new URL(args[0]); String protocol = url.getProtocol(); if (!protocol.equals("http")) throw new IllegalArgumentException("URL must use ' protocol"); String host = url.getHost(); int port = url.getPort(); if (port == -1) port = 80; // om ingen port given använd defaultporten String filename = url.getFile(); Socket socket = new Socket(host, port); InputStream from_server = socket.getInputStream(); PrintWriter to_server = new PrintWriter(new OutputStreamWriter(socket.getOutputStream())); to_server.println("GET " + filename); to_server.flush(); // Se till att det hela skickas på en gång! Dela upp URL:en på sina beståndsdelar Skapa socket mot angiven värd och port Skapa in- och utmatningsström mar mot servern Skicka förfrågan till servern mha GET

previous next 7 Socketar... byte[] buffer = new byte[4096]; int bytes_read; while((bytes_read = from_server.read(buffer)) != -1) to_file.write(buffer, 0, bytes_read); socket.close(); to_file.close(); } catch (Exception e) { System.err.println(e); System.err.println("Usage: java HttpClient [ ]"); } Skapa buffert för att läsa det servern skickar Så länge som det finns något att läsa skriv det på fil (eller terminal) Stäng förbindelse

previous next 8 Socketar En enkel WEB-server som bara ekar frågor som ställs till den import java.io.*; import java.net.*; public class HttpMirror { public static void main(String args[]) { try { int port = Integer.parseInt(args[0]); ServerSocket ss = new ServerSocket(port); for(;;) { Socket client = ss.accept(); En enkel server som bara ekar frågor som ställs till den. Kan bla användas för att se hur en fråga från en WEB-läsare ser ut eller hur data skall skickas tillbaks från en server. En enkel server som bara ekar frågor som ställs till den. Kan bla användas för att se hur en fråga från en WEB-läsare ser ut eller hur data skall skickas tillbaks från en server. Argumentet anger den port som servern skall köra på Skapa serversocket på angiven port Vänta till klient ansluter Vi kör om och om igen ända tills servern termineras (med tex CTRL-C)

previous next 9 Socketar... BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream())); PrintWriter out = new PrintWriter(new OutputStreamWriter(client.getOutputStream())); out.println("HTTP/ "); // Version & statuskod out.println("Content-Type: text/plain"); // typen på data som vi skickar out.println(); // Slut på huvudet out.flush(); String line; while((line = in.readLine()) != null) { if (line.length() == 0) break; out.println(line); } Skapa in- och utmatningsström mar mot klienten Skicka över protokoll- information till klienten Läs från klienten och eka tillbaks det

previous next 10 Socketar... out.close(); in.close(); client.close(); } catch (Exception e) { System.err.println(e); System.err.println("Usage: java HttpMirror "); } Kör genom att 1) starta programmet på den lokala datorn java HttpMirror ) Öppna klient mot “servern” från vanlig web-läsare Ge eventuellt argument och se hur detta ter sig Kör genom att 1) starta programmet på den lokala datorn java HttpMirror ) Öppna klient mot “servern” från vanlig web-läsare Ge eventuellt argument och se hur detta ter sig

previous next 11 Socketar Meddelande-server baserad på socketar Det sista exemplet är lite större och beskrivs på separat WEB-sida Detta exempel är en delmängd av det meddelandesystem som skall implementeras i laboration 6 Exemplet kommer byggas ut och på efterhand –Med olika varianter och tillägg –I olika programspråk