© Amir Kirsh Java Networking Written by Amir Kirsh, Edited by Liron Blecher.
-
Upload
anne-carpenter -
Category
Documents
-
view
218 -
download
5
Transcript of © Amir Kirsh Java Networking Written by Amir Kirsh, Edited by Liron Blecher.
![Page 1: © Amir Kirsh Java Networking Written by Amir Kirsh, Edited by Liron Blecher.](https://reader035.fdocuments.in/reader035/viewer/2022072006/56649cf75503460f949c7406/html5/thumbnails/1.jpg)
© Amir Kirsh
Java Networking
Written by Amir Kirsh, Edited by Liron Blecher
![Page 2: © Amir Kirsh Java Networking Written by Amir Kirsh, Edited by Liron Blecher.](https://reader035.fdocuments.in/reader035/viewer/2022072006/56649cf75503460f949c7406/html5/thumbnails/2.jpg)
Age
nda
• Downloading a web page
• TCP Client
• TCP Server
• What’s beyond
![Page 3: © Amir Kirsh Java Networking Written by Amir Kirsh, Edited by Liron Blecher.](https://reader035.fdocuments.in/reader035/viewer/2022072006/56649cf75503460f949c7406/html5/thumbnails/3.jpg)
3
Downloading a web page
public static void main (String args[]) {
String line;try {
URL u = new URL(args[0]);
DataInputStream htmlPage =new DataInputStream(u.openStream());
while ((line = htmlPage.readLine()) != null) { System.out.println(line);
}}catch (Exception e) {
System.err.println(e); // naive treatment}
}
![Page 4: © Amir Kirsh Java Networking Written by Amir Kirsh, Edited by Liron Blecher.](https://reader035.fdocuments.in/reader035/viewer/2022072006/56649cf75503460f949c7406/html5/thumbnails/4.jpg)
4
Dealing with URL encoding
public static void main (String args[]) {
String line;try {
URL u = new URL(URLEncoder.encode(
args[0], Charset.forName("UTF-8") ) );
DataInputStream htmlPage =new DataInputStream(u.openStream());
while ((line = htmlPage.readLine()) != null) { System.out.println(line);
}}catch (Exception e) {
System.err.println(e); // naive treatment}
}
![Page 5: © Amir Kirsh Java Networking Written by Amir Kirsh, Edited by Liron Blecher.](https://reader035.fdocuments.in/reader035/viewer/2022072006/56649cf75503460f949c7406/html5/thumbnails/5.jpg)
Age
nda
• Downloading a web page
• TCP Client
• TCP Server
• What’s beyond
![Page 6: © Amir Kirsh Java Networking Written by Amir Kirsh, Edited by Liron Blecher.](https://reader035.fdocuments.in/reader035/viewer/2022072006/56649cf75503460f949c7406/html5/thumbnails/6.jpg)
6
Simple TCP Echo Client
String line = "";
try (Socket socket = new Socket("localhost", 7000)) {
BufferedReader inputStream = new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintStream outputStream = new PrintStream(socket.getOutputStream());
BufferedReader userInput = new BufferedReader(new InputStreamReader(System.in));
while (!line.equals("!")) {
line = userInput.readLine();
outputStream.println(line);
System.out.println(inputStream.readLine());
}
}
![Page 7: © Amir Kirsh Java Networking Written by Amir Kirsh, Edited by Liron Blecher.](https://reader035.fdocuments.in/reader035/viewer/2022072006/56649cf75503460f949c7406/html5/thumbnails/7.jpg)
7
Simple TCP Echo Client – cont’
public static void main(String[] args) {
try {…
} catch (Exception e) {
System.err.println(e);}
}
![Page 8: © Amir Kirsh Java Networking Written by Amir Kirsh, Edited by Liron Blecher.](https://reader035.fdocuments.in/reader035/viewer/2022072006/56649cf75503460f949c7406/html5/thumbnails/8.jpg)
Age
nda
• Downloading a web page
• TCP Client
• TCP Server
• What’s beyond
![Page 9: © Amir Kirsh Java Networking Written by Amir Kirsh, Edited by Liron Blecher.](https://reader035.fdocuments.in/reader035/viewer/2022072006/56649cf75503460f949c7406/html5/thumbnails/9.jpg)
9
Simple TCP Echo Server
String line = "";
try (ServerSocket server = new ServerSocket(7000)) {
Socket socket = server.accept(); // blockingBufferedReader inputStream = new BufferedReader(new
InputStreamReader(socket.getInputStream()));
PrintStream outputStream = new PrintStream(socket.getOutputStream());
while (!line.equals("!")) {
line = inputStream.readLine();
outputStream.println(line);
System.out.println(line);
}
}
![Page 10: © Amir Kirsh Java Networking Written by Amir Kirsh, Edited by Liron Blecher.](https://reader035.fdocuments.in/reader035/viewer/2022072006/56649cf75503460f949c7406/html5/thumbnails/10.jpg)
10
Simple TCP Echo Server – cont’
public static void main(String[] args) {
try {…
} catch (Exception e) {
System.err.println(e);}
}
![Page 11: © Amir Kirsh Java Networking Written by Amir Kirsh, Edited by Liron Blecher.](https://reader035.fdocuments.in/reader035/viewer/2022072006/56649cf75503460f949c7406/html5/thumbnails/11.jpg)
DEMO
examples.streams.simple
11
![Page 12: © Amir Kirsh Java Networking Written by Amir Kirsh, Edited by Liron Blecher.](https://reader035.fdocuments.in/reader035/viewer/2022072006/56649cf75503460f949c7406/html5/thumbnails/12.jpg)
Age
nda
• Downloading a web page
• TCP Client
• TCP Server
• What’s beyond
![Page 13: © Amir Kirsh Java Networking Written by Amir Kirsh, Edited by Liron Blecher.](https://reader035.fdocuments.in/reader035/viewer/2022072006/56649cf75503460f949c7406/html5/thumbnails/13.jpg)
13
What’s beyond
- UDPjava.net.DatagramSocket
- Multicastjava.net.MulticastSocket
- Selector and Channels (and nio in general)java.nio.channels
- Servlets (and JSP)
- Web Services
- RMI; EJB
![Page 14: © Amir Kirsh Java Networking Written by Amir Kirsh, Edited by Liron Blecher.](https://reader035.fdocuments.in/reader035/viewer/2022072006/56649cf75503460f949c7406/html5/thumbnails/14.jpg)
DEMO
examples.streams.advanced
14