Presentation laddar. Vänta.

Presentation laddar. Vänta.

Java Nätverks API URL sockets.

Liknande presentationer


En presentation över ämnet: "Java Nätverks API URL sockets."— Presentationens avskrift:

1 Java Nätverks API URL sockets

2 Nätverkskomponenter i Java
URL Stream sockets (TCP) Datagram sockets (UDP) Remote Method Invocation (RMI)

3 URL klassen Representerar en web resurs metoder getProtocol()
URL url1 =new URL(” URL url2 =new URL(url1,”index.html”); metoder getProtocol() getPort() openConnection() getContent()

4 URLConnection klassen
Öppna en url koppling URLConnection con = url1.openConnection(); Hämta innehållet på en websida BufferedReader Stream = new BufferedReader( new InputStreamReader( con.getInputStream()));

5 Socket klassen Java.net.Socket används för att göra en TCP socket för en klientapplikation. getInputStream() och getOutputStream() används för att skapa InputStream/OutputStream objekt kopplade till Socket.

6 Socket klassen Socket HTTP port host host:port TCP IP IP TCP

7 ServerSocket klassen Används för att skapa en socket koppling på server sidan Tillsammans med Socket kan man skriva distribuerade Client/Server applikationer i Java utan att behöva bekymra sig om detaljer som accept på lägre nivåer

8 Exempel: Dagens datum import java.net.*; import java.io.*;
import java.util.Date; public class date { public static void main(String[] args) { try { for (int i = 0; i < args.length; i++) { Socket s = new Socket(args[i], 13);

9 Exempel: Dagens datum InputStream is = s.getInputStream();
InputStreamReader isr = new InputStreamReader(is); BufferedReader br = new BufferedReader(isr); String theTime = br.readLine(); System.out.println(theTime); s.close(); } catch (IOException e) { System.out.println((new Date()).toString());

10 Uniform Datagram Protocol
TCP feltolerant, dvs sänder om packet inte kom fram eller blev korrupt UDP har ingen felkontroll Varför använda UDP? UDP upp till 3ggr snabbare än TCP

11 UDP klasser Java.net.DatagramSocket java.net.DatagramPacket
Fungerar både som klient och server UDP portar skilda från TCP portar java.net.DatagramPacket Hållare för de byte´s som skall skickas resp sändas Innehåller IP adressen och portnummer

12 DatagramPacket konstruktorer
public DatagramPacket( byte[] data, int length) byte[] data, int length, InetAddress iaddr, int iport)

13 DatagramPacket InetAddress ia = new InetAddess(”datan");
int chargen = 19; String s = "My second UDP Packet”; byte[] b = s.getBytes(); DatagramPacket dp = new DatagramPacket(b, b.length, ia, chargen);

14 DatagramSocket konstruktorer
public DatagramSocket() throws SocketException public DatagramSocket(int port) throws SocketException public DatagramSocket(int port, InetAddress laddr) throws SocketException

15 Skicka Datagram class UDPSend {
public static void main(String[] args) { try { InetAddress ia = InetAddress.getByName(args[0]); int chargen = 19; String s = "My second UDP Packet"; byte[] b = s.getBytes(); DatagramPacket dp = new DatagramPacket(b, b.length, ia, chargen); DatagramSocket sender = new DatagramSocket(); sender.send(dp); } catch (UnknownHostException e) {} catch (IOException e) {} }

16 MulticastSocket Ärver DatagramSocket
Två nya metoder joinGroup() och leaveGroup(). Endast multicastadresser Modifierad send som talar om hur många hops man skall skicka sitt multicast meddelande


Ladda ner ppt "Java Nätverks API URL sockets."

Liknande presentationer


Google-annonser