SlideShare a Scribd company logo
Network Programming
http://www.java2all.com
Introduction
http://www.java2all.com
Network Programming Introduction
Java supports Network Programming to communicate
with other machines.
Let`s start with Network Programming Introduction.
http://www.java2all.com
Network Programming Introduction
As we all know that Computer Network means a group of
computers connect with each other via some medium and transfer
data between them as and when require.
Java supports Network Programming so we can make such
program in which the machines connected in network will send and
receive data from other machine in the network by programming.
The first and simple logic to send or receive any kind of data
or message is we must have the address of receiver or sender. So
when a computer needs to communicate with another computer, it`s
require the other computer’s address.
Java networking programming supports the concept of
socket. A socket identifies an endpoint in a network. The socket
communication takes place via a protocol.
http://www.java2all.com
The Internet Protocol is a lower-level, connection less (means
there is no continuing connection between the end points) protocol for
delivering the data into small packets from one computer (address) to
another computer (address) across the network (Internet). It does not
guarantee to deliver sent packets to the destination.
The most widely use a version of IP today is IPv4, uses a 32 bit
value to represent an address which are organized into four 8-bits chunks.
However new addressing scheme called IPv6, uses a 128 bit value to
represent an address which are organized into four 16-bits chunks. The
main advantage of IPv6 is that it supports much larger address space than
does IPv4. An IP (Internet Protocol) address uniquely identifies the
computer on the network.
IP addresses are written in a notation using numbers separated by
dots is called dotted-decimal notation. There are four 8 bits value between
0 and 255 are available in each IP address such as 127.0.0.1 means local-
host, 192.168.0.3 etc.
http://www.java2all.com
It`s not an easy to remember because of so many numbers, they
are often mapped to meaningful names called domain names such as
mail.google.com There is a server on Internet who is translate the host
names into IP addresses is called DNS (Domain Name Server).
NOTE: Internet is the global network of millions of computer and
the any computer may connect the Internet through LAN (Local Area
Network), Cable Modem, ISP (Internet Service Provider) using dialup.
When a user pass the URL like java2all.com in the web-browser
from any computer, it first ask to DNS to translate this domain name into
the numeric IP address and then sends the request to this IP address. This
enables users to work with domain names, but the internet operates on IP
addresses.
Here in java2all.com the “com” domain is reserved for commercial
sites; then “java2all” is the company name.
http://www.java2all.com
The Higher-level protocol used in with the IP are TCP (Transmission
Control Protocol) and UDP (User Datagram Protocol).
The TCP enables two host to make a connection and exchange the
stream of data, so it`s called Stream-based communication. TCP guarantees
delivery of data and also guarantees that streams of data will be delivered
in the same order in which they are sent. The TCP can detect the lost of
transmission and so resubmit them and hence the transmissions are
lossless and reliable.
The UDP is a standard, directly to support fast, connectionless host-
to-host datagram oriented model that is used over the IP and exchange the
packet of data so it`s called packet-based communication. The UDP cannot
guarantee lossless transmission.
JAVA supports both TCP and UDP protocol families.
http://www.java2all.com
Java InetAddress Class
http://www.java2all.com
Java InetAddress Class is used to encapsulate the two thing.
1. Numeric IP Address
2. The domain name for that address.
The InetAddress can handle both IPv4 and IPv6 addressses. It has
no visible constructors so to create its object, the user have to use one of
the available in-built static methods.
The commonly used InetAddress in-built methods are:
(1) getLocalHost(): It returns the InetAddress object that represents the
local host contain the name and address both. If this method unable to
find out the host name, it throw an UnknownHostException.
Syntax:
Static InetAddress getLocalHost() throws UnknownHostException
http://www.java2all.com
(2) getByName(): It returns an InetAddress for a host name passed to it as
a parameter argument. If this method unable to find out the host name, it
throw an UnknownHostException.
Syntax:
Static InetAddress getByName(String host_name) throws
UnknownHostException
(3) getAllByName(): It returns an array of an InetAddress that represent all
of the addresses that a particular name resolve to it. If this method can’t
find out the name to at least one address, it throw an
UnknownHostException.
Syntax:
Static InetAddress[] getAllByName(String host_name) throws
UnknownHostException
http://www.java2all.com
Program: Write down a program which demonstrate an InetAddress class.
import java.net.InetAddress;
import java.net.UnknownHostException;
public class InetAddress_Demo
{
public static void main(String[] args)
{
String name = “”;
try {
System.out.println(“HOST NAME - Numeric Address : “+InetAddress.getLocalHost());
InetAddress ip = InetAddress.getByName(name);
System.out.println(“HOST DEFAULT-NAME / IP :”+ip);
System.out.println(“HOST IP-ADDRESS : “+ip.getHostAddress());
System.out.println(“HOST DEFAULT-NAME : “+ip.getHostName());
}
catch (UnknownHostException e) {
System.out.println(“Not find the IP-ADDRESS for :”+name);
}
}
}
Output:
HOST NAME - Numeric Address : Ashutosh-
2c89cd5e0a/127.0.0.1
HOST DEFAULT-NAME / IP : localhost/127.0.0.1
HOST IP-ADDRESS : 127.0.0.1
HOST DEFAULT-NAME : localhost
http://www.java2all.com
socket programming in java
http://www.java2all.com
socket programming in java is very important topic and concept of
network programming.
Java network Programming supports the concept of socket. A
socket identifies an endpoint in a network. The socket communication take
place via a protocol.
A socket can be used to connect JAVA Input/Output system to other
programs that may resides either on any machine on the Internet or on the
local machine.
http://www.java2all.com
TCP/IP Sockets:
TCP/IP sockets are used to implement point-to-point, reliable,
bidirectional, stream-based connections between hosts on the Internet.
There are two types of TCP sockets available in java:
(1) TCP/IP Client Socket
(2) TCP/IP Server Socket
(1) TCP/IP Client Socket:
The Socket class (available in java.net package) is for the Client Socket.
It is designed to connect to server sockets and initiate protocol exchange.
There are two constructers used to create client sockets type object.
(a) Socket(String host_name,int port) throws
UnknownHostException,IOException it creates a socket that is
connected to the given host_name and port number.
http://www.java2all.com
(b) Socket(InetAddress ip,int port) throws IOException it creates a
socket using a pre-existing InetAddress object and a port number.
(2) TCP/IP Server Socket:
The ServerSocket class (available in java.net package) is for the
Server. It is designed to be a “listener”, which waits for clients to connect
before doing anything and that listen for either local or remote client
programs to connect to them on given port.
When you create ServerSocket it will register itself with the system
as having an interest in client connection.
Syntax:
ServerSocket(int port) throws IOException
http://www.java2all.com
Program: Write down a program which demonstrate the Socket programming
for passing the message from server to client.
Client.java:
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.Socket;
import java.net.UnknownHostException;
public class Client {
public static void main(String[] args) {
System.out.println(“Sending a request.....”);
try {
Socket s = new Socket(“127.0.0.1”,1564);
System.out.println(“connected successfully.....”);
BufferedReader br = new BufferedReader(new
InputStreamReader(s.getInputStream()));
System.out.println(“response from server...”);
System.out.println(“Client side : “+br.readLine()); s.close();
}
catch (UnknownHostException e) {
System.out.println(“Not find the IP-ADDRESS for :”+e);
}
catch (IOException e) {
System.out.println(“Not Found data for Socket : “+e);
}
}
}
http://www.java2all.com
Server.java:
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;
public class Server
{
public static void main(String[] args)
{
try
{
ServerSocket ss = new ServerSocket(1564);
System.out.println("waiting for request....");
Socket s = ss.accept();
System.out.println("Request accepted");
PrintStream ps = new PrintStream(s.getOutputStream());
BufferedReader br = new BufferedReader(new
InputStreamReader(System.in));
System.out.println("Input the data at server : ");
ps.print(br.readLine());
s.close();
ss.close();
}
catch (Exception e)
{
System.out.println("Not Found data for Socket : "+e);
}
}
} http://www.java2all.com
For Output follow the below step:
(1) Run server.java
Console:
waiting for request....
(2) Run Client.java
Console:
waiting for request....
Request accepted
Input the data at server:
(3) Now enter the message at console
Input the data at server:
welcome at server
(4) Then press Enter.
http://www.java2all.com
(5) Sending a request.....
connected successfully.....
response from server...
Client side: welcome at server
Program 2: Write down a program for addition the two different
variable by Socket programming.
Program 3: Write down a program which demonstrate the Socket
programming for passing the message from client to server and also apply
EXIT properties.
http://www.java2all.com
java socket programming example
http://www.java2all.com
Two variable addition and passing message from client to server
two different java socket programming example is given below but before
going through program directly you should have some knowledge about
Java Network Programming and Socket.
These both things are already available in previous chapter so you
can learn from there.
Now let`s move to program 1.
http://www.java2all.com
Program: Write down a program for addition the two different
variable by Socket programming.
Client_Addition.java:
import java.io.PrintStream;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.Scanner;
public class Client_Addition
{
public static void main(String[] args) {
try {
Socket s = new Socket("127.0.0.1",1868);
PrintStream ps = new PrintStream(s.getOutputStream());
Scanner sc = new Scanner(System.in);
System.out.println("Enter first value: ");
int i1 = sc.nextInt();
ps.println(i1);
ps.flush();
System.out.println("Enter second value: ");
int i2 = sc.nextInt();
ps.println(i2);
ps.flush();
s.close();
}
catch (UnknownHostException e) {
System.out.println("Not find the IP-ADDRESS for :"+e);
}
catch (IOException e) {
System.out.println("Not Found data for Socket : "+e);
}
}
http://www.java2all.com
Server_Addition.java
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;
public class Server_Addition
{
public static void main(String[] args)
{
try
{
System.out.println("Server run successfully......");
ServerSocket sc = new ServerSocket(1868);
Socket s = sc.accept();
BufferedReader br = new BufferedReader(new
InputStreamReader(s.getInputStream()));
int i1 = Integer.parseInt(br.readLine());
int i2 = Integer.parseInt(br.readLine());
System.out.println("Addition: "+(i1+i2));
s.close();
sc.close();
}
catch (IOException e)
{
System.out.println("Not Found data for Socket : "+e);
}
}
} http://www.java2all.com
For Output follow the below step:
(1) Run Server_Addition.java
Console:
Server run successfully......
(2) Run Client.java
Console:
Enter first value:
5
Enter second value:
25
(3) Now, press Enter
(4) Server run successfully......
Addition: 30
http://www.java2all.com
java socket programming example 2:
Program: Write down a program which demonstrate the Socket
programming for passing the message from client to server and also
apply EXIT properties.
Client.java:
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.net.Socket;
import java.net.UnknownHostException;
public class Client
{
public static void main(String[] args) {
System.out.println("Sending a request.....");
Try {
Socket s = new Socket("127.0.0.1",1235);
System.out.println("connected successfully.....");
BufferedReader br = new BufferedReader(new
InputStreamReader(System.in));
PrintStream ps = new PrintStream(s.getOutputStream());
BufferedReader brs = new BufferedReader(new
InputStreamReader(s.getInputStream()));
while(true)
{
System.out.println("input the data....");
String st = br.readLine();
ps.println(st);
http://www.java2all.com
if(st.equals("exit"))
{
System.exit(1);
}
System.out.println("data returned");
System.out.println(st);
}
}
catch (UnknownHostException e)
{
System.out.println("Not find the IP-ADDRESS for :"+e);
}
catch (IOException e)
{
System.out.println("Not Found data for Socket : "+e);
}
}
}
http://www.java2all.com
Server.java:
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;
public class Server
{
public static void main(String[] args) {
try {
ServerSocket ss = new ServerSocket(1235);
System.out.println("waiting for request....");
Socket s = ss.accept();
System.out.println("Request accepted");
BufferedReader br = new BufferedReader(new
InputStreamReader(s.getInputStream()));
while(true)
{
String st = br.readLine();
if(st.equals("exit")==true)
{
System.out.println("connection lost.....");
System.exit(1);
}
System.out.println("Message from client: "+st);
}
}
catch (IOException e) {
System.out.println("Not Found data for Socket : "+e);
}
}
}
http://www.java2all.com
For Output follow the below step:
(1) Put the both file in the bin folder at jdk.
For example: C:Program Files (x86)Javajdk1.6.0bin.
(2) Open Command Prompt & reach up to bin path.
http://www.java2all.com
(3) Compile the Server.java & Client.java
…bin>javac Server.java
…bin>javac Client.java
(4) Run the Server.java
…bin>java Server
http://www.java2all.com
(5) Open new command prompt:
(6) Now revise step-2.
(7) Run the Client.java.
…bin>java Client
http://www.java2all.com
Check the Message at Server Side Command Prompt.
(8) Write down the message on Client Side Command Prompt Like:
Input the data…
Ashutosh
(9) Now Press Enter & Check the Output at Both Windows.
http://www.java2all.com
http://www.java2all.com
(10) If want to Exit then type exit on Client side Window.
Like: Input the data…
exit
http://www.java2all.com

More Related Content

What's hot (20)

Java Socket Programming
Java Socket Programming
Vipin Yadav
 
JAVA AWT
JAVA AWT
shanmuga rajan
 
Packages in java
Packages in java
Elizabeth alexander
 
Java And Multithreading
Java And Multithreading
Shraddha
 
Java program structure
Java program structure
Mukund Kumar Bharti
 
Networking in Java
Networking in Java
Tushar B Kute
 
Threads in JAVA
Threads in JAVA
Haldia Institute of Technology
 
Java Streams
Java Streams
M Vishnuvardhan Reddy
 
Java Exception handling
Java Exception handling
kamal kotecha
 
Delegates and events in C#
Delegates and events in C#
Dr.Neeraj Kumar Pandey
 
Java Threads
Java Threads
M Vishnuvardhan Reddy
 
Structure of C++ - R.D.Sivakumar
Structure of C++ - R.D.Sivakumar
Sivakumar R D .
 
HTTP request and response
HTTP request and response
Sahil Agarwal
 
Java: GUI
Java: GUI
Tareq Hasan
 
I/O Streams
I/O Streams
Ravi Chythanya
 
PHP variables
PHP variables
Siddique Ibrahim
 
Remote Method Invocation (RMI)
Remote Method Invocation (RMI)
Peter R. Egli
 
Servlets
Servlets
ZainabNoorGul
 
interface in c#
interface in c#
Deepti Pillai
 
Constructor ppt
Constructor ppt
Vinod Kumar
 

Viewers also liked (9)

Java I/O
Java I/O
Jussi Pohjolainen
 
Ppt of socket
Ppt of socket
Amandeep Kaur
 
Handling I/O in Java
Handling I/O in Java
Hiranya Jayathilaka
 
Socket programming-tutorial-sk
Socket programming-tutorial-sk
sureshkarthick37
 
A Short Java Socket Tutorial
A Short Java Socket Tutorial
Guo Albert
 
Socket Programming Tutorial
Socket Programming Tutorial
Jignesh Patel
 
Networking Java Socket Programming
Networking Java Socket Programming
Mousmi Pawar
 
Java Course 8: I/O, Files and Streams
Java Course 8: I/O, Files and Streams
Anton Keks
 
Socket programming
Socket programming
chandramouligunnemeda
 
Socket programming-tutorial-sk
Socket programming-tutorial-sk
sureshkarthick37
 
A Short Java Socket Tutorial
A Short Java Socket Tutorial
Guo Albert
 
Socket Programming Tutorial
Socket Programming Tutorial
Jignesh Patel
 
Networking Java Socket Programming
Networking Java Socket Programming
Mousmi Pawar
 
Java Course 8: I/O, Files and Streams
Java Course 8: I/O, Files and Streams
Anton Keks
 
Ad

Similar to Network programming in java - PPT (20)

Networking Basics1ofjavaprogramming.pptx.pdf
Networking Basics1ofjavaprogramming.pptx.pdf
omkarthombare4989
 
28 networking
28 networking
Ravindra Rathore
 
5_6278455688045789623.pptx
5_6278455688045789623.pptx
EliasPetros
 
Advance Java-Network Programming
Advance Java-Network Programming
ashok hirpara
 
Module 1 networking basics-2
Module 1 networking basics-2
Ankit Dubey
 
Network Programming in Java
Network Programming in Java
Tushar B Kute
 
Md13 networking
Md13 networking
Rakesh Madugula
 
Basic Networking in Java
Basic Networking in Java
suraj pandey
 
Networking.pptx
Networking.pptx
Esubesisay
 
Lab manual cn-2012-13
Lab manual cn-2012-13
Sasi Kala
 
Java networking
Java networking
ssuser3a47cb
 
Chapter 4
Chapter 4
Ebisa Bekele
 
Chap 1 Network Theory & Java Overview
Chap 1 Network Theory & Java Overview
Ministry of Higher Education
 
Java 1
Java 1
VidyaVarshini3
 
Lecture6
Lecture6
vantinhkhuc
 
Socket
Socket
Amandeep Kaur
 
Java networking
Java networking
Arati Gadgil
 
Advanced Java Programming: Introduction and Overview of Java Networking 1. In...
Advanced Java Programming: Introduction and Overview of Java Networking 1. In...
KuntalVasoya
 
Network programming1
Network programming1
Soham Sengupta
 
A.java
A.java
JahnaviBhagat
 
Networking Basics1ofjavaprogramming.pptx.pdf
Networking Basics1ofjavaprogramming.pptx.pdf
omkarthombare4989
 
5_6278455688045789623.pptx
5_6278455688045789623.pptx
EliasPetros
 
Advance Java-Network Programming
Advance Java-Network Programming
ashok hirpara
 
Module 1 networking basics-2
Module 1 networking basics-2
Ankit Dubey
 
Network Programming in Java
Network Programming in Java
Tushar B Kute
 
Basic Networking in Java
Basic Networking in Java
suraj pandey
 
Networking.pptx
Networking.pptx
Esubesisay
 
Lab manual cn-2012-13
Lab manual cn-2012-13
Sasi Kala
 
Advanced Java Programming: Introduction and Overview of Java Networking 1. In...
Advanced Java Programming: Introduction and Overview of Java Networking 1. In...
KuntalVasoya
 
Ad

More from kamal kotecha (20)

Java Hibernate Programming with Architecture Diagram and Example
Java Hibernate Programming with Architecture Diagram and Example
kamal kotecha
 
Java servlet life cycle - methods ppt
Java servlet life cycle - methods ppt
kamal kotecha
 
Java rmi example program with code
Java rmi example program with code
kamal kotecha
 
Java rmi
Java rmi
kamal kotecha
 
Jdbc example program with access and MySql
Jdbc example program with access and MySql
kamal kotecha
 
Jdbc api
Jdbc api
kamal kotecha
 
Jdbc architecture and driver types ppt
Jdbc architecture and driver types ppt
kamal kotecha
 
JSP Error handling
JSP Error handling
kamal kotecha
 
Jsp element
Jsp element
kamal kotecha
 
Jsp chapter 1
Jsp chapter 1
kamal kotecha
 
String and string buffer
String and string buffer
kamal kotecha
 
Wrapper class
Wrapper class
kamal kotecha
 
Packages and inbuilt classes of java
Packages and inbuilt classes of java
kamal kotecha
 
Interface
Interface
kamal kotecha
 
Inheritance chepter 7
Inheritance chepter 7
kamal kotecha
 
Class method
Class method
kamal kotecha
 
Introduction to class in java
Introduction to class in java
kamal kotecha
 
Control statements
Control statements
kamal kotecha
 
Jsp myeclipse
Jsp myeclipse
kamal kotecha
 
basic core java up to operator
basic core java up to operator
kamal kotecha
 
Java Hibernate Programming with Architecture Diagram and Example
Java Hibernate Programming with Architecture Diagram and Example
kamal kotecha
 
Java servlet life cycle - methods ppt
Java servlet life cycle - methods ppt
kamal kotecha
 
Java rmi example program with code
Java rmi example program with code
kamal kotecha
 
Jdbc example program with access and MySql
Jdbc example program with access and MySql
kamal kotecha
 
Jdbc architecture and driver types ppt
Jdbc architecture and driver types ppt
kamal kotecha
 
String and string buffer
String and string buffer
kamal kotecha
 
Packages and inbuilt classes of java
Packages and inbuilt classes of java
kamal kotecha
 
Inheritance chepter 7
Inheritance chepter 7
kamal kotecha
 
Introduction to class in java
Introduction to class in java
kamal kotecha
 
basic core java up to operator
basic core java up to operator
kamal kotecha
 

Recently uploaded (20)

fHUINhKG5lM1WBBk608.pptxfhjjhhjffhiuhhghj
fHUINhKG5lM1WBBk608.pptxfhjjhhjffhiuhhghj
yadavshivank2006
 
02 - Ethics & Professionalism - BEM, IEM, MySET.PPT
02 - Ethics & Professionalism - BEM, IEM, MySET.PPT
SharinAbGhani1
 
Forecasting Road Accidents Using Deep Learning Approach: Policies to Improve ...
Forecasting Road Accidents Using Deep Learning Approach: Policies to Improve ...
Journal of Soft Computing in Civil Engineering
 
Tree_Traversals.pptbbbbbbbbbbbbbbbbbbbbbbbbb
Tree_Traversals.pptbbbbbbbbbbbbbbbbbbbbbbbbb
RATNANITINPATIL
 
Structural Design for Residential-to-Restaurant Conversion
Structural Design for Residential-to-Restaurant Conversion
DanielRoman285499
 
Electrical and Electronics Engineering: An International Journal (ELELIJ)
Electrical and Electronics Engineering: An International Journal (ELELIJ)
elelijjournal653
 
Strength of materials (Thermal stress and strain relationships)
Strength of materials (Thermal stress and strain relationships)
pelumiadigun2006
 
Rearchitecturing a 9-year-old legacy Laravel application.pdf
Rearchitecturing a 9-year-old legacy Laravel application.pdf
Takumi Amitani
 
Direct Current circuitsDirect Current circuitsDirect Current circuitsDirect C...
Direct Current circuitsDirect Current circuitsDirect Current circuitsDirect C...
BeHappy728244
 
Webinar On Steel Melting IIF of steel for rdso
Webinar On Steel Melting IIF of steel for rdso
KapilParyani3
 
First Review PPT gfinal gyft ftu liu yrfut go
First Review PPT gfinal gyft ftu liu yrfut go
Sowndarya6
 
22PCOAM16 _ML_Unit 3 Notes & Question bank
22PCOAM16 _ML_Unit 3 Notes & Question bank
Guru Nanak Technical Institutions
 
Impurities of Water and their Significance.pptx
Impurities of Water and their Significance.pptx
dhanashree78
 
IOt Based Research on Challenges and Future
IOt Based Research on Challenges and Future
SACHINSAHU821405
 
社内勉強会資料_Chain of Thought .
社内勉強会資料_Chain of Thought .
NABLAS株式会社
 
Rigor, ethics, wellbeing and resilience in the ICT doctoral journey
Rigor, ethics, wellbeing and resilience in the ICT doctoral journey
Yannis
 
362 Alec Data Center Solutions-Slysium Data Center-AUH-Adaptaflex.pdf
362 Alec Data Center Solutions-Slysium Data Center-AUH-Adaptaflex.pdf
djiceramil
 
International Journal of Advance Robotics & Expert Systems (JARES)
International Journal of Advance Robotics & Expert Systems (JARES)
jaresjournal868
 
May 2025: Top 10 Cited Articles in Software Engineering & Applications Intern...
May 2025: Top 10 Cited Articles in Software Engineering & Applications Intern...
sebastianku31
 
Computer_vision-photometric_image_formation.pdf
Computer_vision-photometric_image_formation.pdf
kumarprem6767merp
 
fHUINhKG5lM1WBBk608.pptxfhjjhhjffhiuhhghj
fHUINhKG5lM1WBBk608.pptxfhjjhhjffhiuhhghj
yadavshivank2006
 
02 - Ethics & Professionalism - BEM, IEM, MySET.PPT
02 - Ethics & Professionalism - BEM, IEM, MySET.PPT
SharinAbGhani1
 
Tree_Traversals.pptbbbbbbbbbbbbbbbbbbbbbbbbb
Tree_Traversals.pptbbbbbbbbbbbbbbbbbbbbbbbbb
RATNANITINPATIL
 
Structural Design for Residential-to-Restaurant Conversion
Structural Design for Residential-to-Restaurant Conversion
DanielRoman285499
 
Electrical and Electronics Engineering: An International Journal (ELELIJ)
Electrical and Electronics Engineering: An International Journal (ELELIJ)
elelijjournal653
 
Strength of materials (Thermal stress and strain relationships)
Strength of materials (Thermal stress and strain relationships)
pelumiadigun2006
 
Rearchitecturing a 9-year-old legacy Laravel application.pdf
Rearchitecturing a 9-year-old legacy Laravel application.pdf
Takumi Amitani
 
Direct Current circuitsDirect Current circuitsDirect Current circuitsDirect C...
Direct Current circuitsDirect Current circuitsDirect Current circuitsDirect C...
BeHappy728244
 
Webinar On Steel Melting IIF of steel for rdso
Webinar On Steel Melting IIF of steel for rdso
KapilParyani3
 
First Review PPT gfinal gyft ftu liu yrfut go
First Review PPT gfinal gyft ftu liu yrfut go
Sowndarya6
 
Impurities of Water and their Significance.pptx
Impurities of Water and their Significance.pptx
dhanashree78
 
IOt Based Research on Challenges and Future
IOt Based Research on Challenges and Future
SACHINSAHU821405
 
社内勉強会資料_Chain of Thought .
社内勉強会資料_Chain of Thought .
NABLAS株式会社
 
Rigor, ethics, wellbeing and resilience in the ICT doctoral journey
Rigor, ethics, wellbeing and resilience in the ICT doctoral journey
Yannis
 
362 Alec Data Center Solutions-Slysium Data Center-AUH-Adaptaflex.pdf
362 Alec Data Center Solutions-Slysium Data Center-AUH-Adaptaflex.pdf
djiceramil
 
International Journal of Advance Robotics & Expert Systems (JARES)
International Journal of Advance Robotics & Expert Systems (JARES)
jaresjournal868
 
May 2025: Top 10 Cited Articles in Software Engineering & Applications Intern...
May 2025: Top 10 Cited Articles in Software Engineering & Applications Intern...
sebastianku31
 
Computer_vision-photometric_image_formation.pdf
Computer_vision-photometric_image_formation.pdf
kumarprem6767merp
 

Network programming in java - PPT

  • 3. Network Programming Introduction Java supports Network Programming to communicate with other machines. Let`s start with Network Programming Introduction. http://www.java2all.com
  • 4. Network Programming Introduction As we all know that Computer Network means a group of computers connect with each other via some medium and transfer data between them as and when require. Java supports Network Programming so we can make such program in which the machines connected in network will send and receive data from other machine in the network by programming. The first and simple logic to send or receive any kind of data or message is we must have the address of receiver or sender. So when a computer needs to communicate with another computer, it`s require the other computer’s address. Java networking programming supports the concept of socket. A socket identifies an endpoint in a network. The socket communication takes place via a protocol. http://www.java2all.com
  • 5. The Internet Protocol is a lower-level, connection less (means there is no continuing connection between the end points) protocol for delivering the data into small packets from one computer (address) to another computer (address) across the network (Internet). It does not guarantee to deliver sent packets to the destination. The most widely use a version of IP today is IPv4, uses a 32 bit value to represent an address which are organized into four 8-bits chunks. However new addressing scheme called IPv6, uses a 128 bit value to represent an address which are organized into four 16-bits chunks. The main advantage of IPv6 is that it supports much larger address space than does IPv4. An IP (Internet Protocol) address uniquely identifies the computer on the network. IP addresses are written in a notation using numbers separated by dots is called dotted-decimal notation. There are four 8 bits value between 0 and 255 are available in each IP address such as 127.0.0.1 means local- host, 192.168.0.3 etc. http://www.java2all.com
  • 6. It`s not an easy to remember because of so many numbers, they are often mapped to meaningful names called domain names such as mail.google.com There is a server on Internet who is translate the host names into IP addresses is called DNS (Domain Name Server). NOTE: Internet is the global network of millions of computer and the any computer may connect the Internet through LAN (Local Area Network), Cable Modem, ISP (Internet Service Provider) using dialup. When a user pass the URL like java2all.com in the web-browser from any computer, it first ask to DNS to translate this domain name into the numeric IP address and then sends the request to this IP address. This enables users to work with domain names, but the internet operates on IP addresses. Here in java2all.com the “com” domain is reserved for commercial sites; then “java2all” is the company name. http://www.java2all.com
  • 7. The Higher-level protocol used in with the IP are TCP (Transmission Control Protocol) and UDP (User Datagram Protocol). The TCP enables two host to make a connection and exchange the stream of data, so it`s called Stream-based communication. TCP guarantees delivery of data and also guarantees that streams of data will be delivered in the same order in which they are sent. The TCP can detect the lost of transmission and so resubmit them and hence the transmissions are lossless and reliable. The UDP is a standard, directly to support fast, connectionless host- to-host datagram oriented model that is used over the IP and exchange the packet of data so it`s called packet-based communication. The UDP cannot guarantee lossless transmission. JAVA supports both TCP and UDP protocol families. http://www.java2all.com
  • 9. Java InetAddress Class is used to encapsulate the two thing. 1. Numeric IP Address 2. The domain name for that address. The InetAddress can handle both IPv4 and IPv6 addressses. It has no visible constructors so to create its object, the user have to use one of the available in-built static methods. The commonly used InetAddress in-built methods are: (1) getLocalHost(): It returns the InetAddress object that represents the local host contain the name and address both. If this method unable to find out the host name, it throw an UnknownHostException. Syntax: Static InetAddress getLocalHost() throws UnknownHostException http://www.java2all.com
  • 10. (2) getByName(): It returns an InetAddress for a host name passed to it as a parameter argument. If this method unable to find out the host name, it throw an UnknownHostException. Syntax: Static InetAddress getByName(String host_name) throws UnknownHostException (3) getAllByName(): It returns an array of an InetAddress that represent all of the addresses that a particular name resolve to it. If this method can’t find out the name to at least one address, it throw an UnknownHostException. Syntax: Static InetAddress[] getAllByName(String host_name) throws UnknownHostException http://www.java2all.com
  • 11. Program: Write down a program which demonstrate an InetAddress class. import java.net.InetAddress; import java.net.UnknownHostException; public class InetAddress_Demo { public static void main(String[] args) { String name = “”; try { System.out.println(“HOST NAME - Numeric Address : “+InetAddress.getLocalHost()); InetAddress ip = InetAddress.getByName(name); System.out.println(“HOST DEFAULT-NAME / IP :”+ip); System.out.println(“HOST IP-ADDRESS : “+ip.getHostAddress()); System.out.println(“HOST DEFAULT-NAME : “+ip.getHostName()); } catch (UnknownHostException e) { System.out.println(“Not find the IP-ADDRESS for :”+name); } } } Output: HOST NAME - Numeric Address : Ashutosh- 2c89cd5e0a/127.0.0.1 HOST DEFAULT-NAME / IP : localhost/127.0.0.1 HOST IP-ADDRESS : 127.0.0.1 HOST DEFAULT-NAME : localhost http://www.java2all.com
  • 12. socket programming in java http://www.java2all.com
  • 13. socket programming in java is very important topic and concept of network programming. Java network Programming supports the concept of socket. A socket identifies an endpoint in a network. The socket communication take place via a protocol. A socket can be used to connect JAVA Input/Output system to other programs that may resides either on any machine on the Internet or on the local machine. http://www.java2all.com
  • 14. TCP/IP Sockets: TCP/IP sockets are used to implement point-to-point, reliable, bidirectional, stream-based connections between hosts on the Internet. There are two types of TCP sockets available in java: (1) TCP/IP Client Socket (2) TCP/IP Server Socket (1) TCP/IP Client Socket: The Socket class (available in java.net package) is for the Client Socket. It is designed to connect to server sockets and initiate protocol exchange. There are two constructers used to create client sockets type object. (a) Socket(String host_name,int port) throws UnknownHostException,IOException it creates a socket that is connected to the given host_name and port number. http://www.java2all.com
  • 15. (b) Socket(InetAddress ip,int port) throws IOException it creates a socket using a pre-existing InetAddress object and a port number. (2) TCP/IP Server Socket: The ServerSocket class (available in java.net package) is for the Server. It is designed to be a “listener”, which waits for clients to connect before doing anything and that listen for either local or remote client programs to connect to them on given port. When you create ServerSocket it will register itself with the system as having an interest in client connection. Syntax: ServerSocket(int port) throws IOException http://www.java2all.com
  • 16. Program: Write down a program which demonstrate the Socket programming for passing the message from server to client. Client.java: import java.io.IOException; import java.io.InputStreamReader; import java.net.Socket; import java.net.UnknownHostException; public class Client { public static void main(String[] args) { System.out.println(“Sending a request.....”); try { Socket s = new Socket(“127.0.0.1”,1564); System.out.println(“connected successfully.....”); BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream())); System.out.println(“response from server...”); System.out.println(“Client side : “+br.readLine()); s.close(); } catch (UnknownHostException e) { System.out.println(“Not find the IP-ADDRESS for :”+e); } catch (IOException e) { System.out.println(“Not Found data for Socket : “+e); } } } http://www.java2all.com
  • 17. Server.java: import java.io.InputStreamReader; import java.io.PrintStream; import java.net.ServerSocket; import java.net.Socket; public class Server { public static void main(String[] args) { try { ServerSocket ss = new ServerSocket(1564); System.out.println("waiting for request...."); Socket s = ss.accept(); System.out.println("Request accepted"); PrintStream ps = new PrintStream(s.getOutputStream()); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); System.out.println("Input the data at server : "); ps.print(br.readLine()); s.close(); ss.close(); } catch (Exception e) { System.out.println("Not Found data for Socket : "+e); } } } http://www.java2all.com
  • 18. For Output follow the below step: (1) Run server.java Console: waiting for request.... (2) Run Client.java Console: waiting for request.... Request accepted Input the data at server: (3) Now enter the message at console Input the data at server: welcome at server (4) Then press Enter. http://www.java2all.com
  • 19. (5) Sending a request..... connected successfully..... response from server... Client side: welcome at server Program 2: Write down a program for addition the two different variable by Socket programming. Program 3: Write down a program which demonstrate the Socket programming for passing the message from client to server and also apply EXIT properties. http://www.java2all.com
  • 20. java socket programming example http://www.java2all.com
  • 21. Two variable addition and passing message from client to server two different java socket programming example is given below but before going through program directly you should have some knowledge about Java Network Programming and Socket. These both things are already available in previous chapter so you can learn from there. Now let`s move to program 1. http://www.java2all.com
  • 22. Program: Write down a program for addition the two different variable by Socket programming. Client_Addition.java: import java.io.PrintStream; import java.net.Socket; import java.net.UnknownHostException; import java.util.Scanner; public class Client_Addition { public static void main(String[] args) { try { Socket s = new Socket("127.0.0.1",1868); PrintStream ps = new PrintStream(s.getOutputStream()); Scanner sc = new Scanner(System.in); System.out.println("Enter first value: "); int i1 = sc.nextInt(); ps.println(i1); ps.flush(); System.out.println("Enter second value: "); int i2 = sc.nextInt(); ps.println(i2); ps.flush(); s.close(); } catch (UnknownHostException e) { System.out.println("Not find the IP-ADDRESS for :"+e); } catch (IOException e) { System.out.println("Not Found data for Socket : "+e); } } http://www.java2all.com
  • 23. Server_Addition.java import java.io.IOException; import java.io.InputStreamReader; import java.net.ServerSocket; import java.net.Socket; public class Server_Addition { public static void main(String[] args) { try { System.out.println("Server run successfully......"); ServerSocket sc = new ServerSocket(1868); Socket s = sc.accept(); BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream())); int i1 = Integer.parseInt(br.readLine()); int i2 = Integer.parseInt(br.readLine()); System.out.println("Addition: "+(i1+i2)); s.close(); sc.close(); } catch (IOException e) { System.out.println("Not Found data for Socket : "+e); } } } http://www.java2all.com
  • 24. For Output follow the below step: (1) Run Server_Addition.java Console: Server run successfully...... (2) Run Client.java Console: Enter first value: 5 Enter second value: 25 (3) Now, press Enter (4) Server run successfully...... Addition: 30 http://www.java2all.com
  • 25. java socket programming example 2: Program: Write down a program which demonstrate the Socket programming for passing the message from client to server and also apply EXIT properties. Client.java: import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintStream; import java.net.Socket; import java.net.UnknownHostException; public class Client { public static void main(String[] args) { System.out.println("Sending a request....."); Try { Socket s = new Socket("127.0.0.1",1235); System.out.println("connected successfully....."); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); PrintStream ps = new PrintStream(s.getOutputStream()); BufferedReader brs = new BufferedReader(new InputStreamReader(s.getInputStream())); while(true) { System.out.println("input the data...."); String st = br.readLine(); ps.println(st); http://www.java2all.com
  • 26. if(st.equals("exit")) { System.exit(1); } System.out.println("data returned"); System.out.println(st); } } catch (UnknownHostException e) { System.out.println("Not find the IP-ADDRESS for :"+e); } catch (IOException e) { System.out.println("Not Found data for Socket : "+e); } } } http://www.java2all.com
  • 27. Server.java: import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintStream; import java.net.ServerSocket; import java.net.Socket; public class Server { public static void main(String[] args) { try { ServerSocket ss = new ServerSocket(1235); System.out.println("waiting for request...."); Socket s = ss.accept(); System.out.println("Request accepted"); BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream())); while(true) { String st = br.readLine(); if(st.equals("exit")==true) { System.out.println("connection lost....."); System.exit(1); } System.out.println("Message from client: "+st); } } catch (IOException e) { System.out.println("Not Found data for Socket : "+e); } } } http://www.java2all.com
  • 28. For Output follow the below step: (1) Put the both file in the bin folder at jdk. For example: C:Program Files (x86)Javajdk1.6.0bin. (2) Open Command Prompt & reach up to bin path. http://www.java2all.com
  • 29. (3) Compile the Server.java & Client.java …bin>javac Server.java …bin>javac Client.java (4) Run the Server.java …bin>java Server http://www.java2all.com
  • 30. (5) Open new command prompt: (6) Now revise step-2. (7) Run the Client.java. …bin>java Client http://www.java2all.com
  • 31. Check the Message at Server Side Command Prompt. (8) Write down the message on Client Side Command Prompt Like: Input the data… Ashutosh (9) Now Press Enter & Check the Output at Both Windows. http://www.java2all.com
  • 33. (10) If want to Exit then type exit on Client side Window. Like: Input the data… exit http://www.java2all.com