Presentation laddar. Vänta.

Presentation laddar. Vänta.

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

Liknande presentationer


En presentation över ämnet: "Java Nätverks API URL sockets. Nätverkskomponenter i Java URL Stream sockets (TCP) Datagram sockets (UDP) Remote Method Invocation (RMI)"— 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 –URL url1 =new URL(”http://www.du.se/~jbr”); –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 host:port TCPIPTCPIP HTTP port host

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 –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) public DatagramPacket( 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 224.0.0.1 - 239.255.255.255 Modifierad send som talar om hur många hops man skall skicka sitt multicast meddelande


Ladda ner ppt "Java Nätverks API URL sockets. Nätverkskomponenter i Java URL Stream sockets (TCP) Datagram sockets (UDP) Remote Method Invocation (RMI)"

Liknande presentationer


Google-annonser