Networking in Java
Ans :- Connecting one node(socket) of one computer with another node of same or other computer is called as networking. Basically it is useful to sending data from one socket to another socket/node of computer. Using java networking we can connect one socket with another. It is suitable for sending some data to other program and receiving data form others. Generally all chatting application like social networking websites works on it. Let us see the following chatting application.
Server.java
import java.io.*;
import java.net.*;
import java.net.*;
public class Server
{
public static void main(String[] args) throws Exception
{
ServerSocket servsock = new ServerSocket(3000);
System.out.print("\n\n Hello ! Now Server is ready for chatting ......... \n\n :\t");
Socket sock = servsock.accept( );
//prepare object to reading data from keyboard (BufferReader object)
BufferedReader keyboardRead = new BufferedReader(new InputStreamReader(System.in));
{
public static void main(String[] args) throws Exception
{
ServerSocket servsock = new ServerSocket(3000);
System.out.print("\n\n Hello ! Now Server is ready for chatting ......... \n\n :\t");
Socket sock = servsock.accept( );
//prepare object to reading data from keyboard (BufferReader object)
BufferedReader keyboardRead = new BufferedReader(new InputStreamReader(System.in));
//prepare object to sending data to Client Program (PrintWriter object)
OutputStream os = sock.getOutputStream();
//object to send data to Server(PrintWriter object)
PrintWriter pw = new PrintWriter(os, true);
//prepare object to receiving data from Client Program ( InputStream object)
InputStream is = sock.getInputStream();
//object to read from Client ( BufferReader object)
BufferedReader receiveRead = new BufferedReader(new InputStreamReader(is));
String receiveMessage, sendMessage;
//Processing for chatting:-
while(true)
{
// reading data from Client :-
if((receiveMessage = receiveRead.readLine()) != null)
{
System.out.println(receiveMessage); // displaying received data at DOS prompt/console
}
// reading data from KeyBoard:-
sendMessage = keyboardRead.readLine();
// sending data to Client Program:-
pw.println(sendMessage);
//flush data:-
pw.flush();
}
}
}
Client.java
import java.io.*;
import java.net.*;
import java.net.*;
public class Client
{
public static void main(String[] args) throws Exception
{
{
public static void main(String[] args) throws Exception
{
String receiveMessage, sendMessage;
Socket sock = new Socket("127.0.0.1", 3000); //socket is ready for localhost/port no 127.0.0.1
//prepare object to reading data from keyboard (BufferReader object) :- BufferedReader keybordRead = new BufferedReader(new InputStreamReader(System.in));
//prepare object to receiving data from Server Program (InputStream object) :-
InputStream is = sock.getInputStream();
//object to read data from Server (BufferReader object)
BufferedReader receiveRead = new BufferedReader(new InputStreamReader(is));
Socket sock = new Socket("127.0.0.1", 3000); //socket is ready for localhost/port no 127.0.0.1
//prepare object to reading data from keyboard (BufferReader object) :- BufferedReader keybordRead = new BufferedReader(new InputStreamReader(System.in));
//prepare object to receiving data from Server Program (InputStream object) :-
InputStream is = sock.getInputStream();
//object to read data from Server (BufferReader object)
BufferedReader receiveRead = new BufferedReader(new InputStreamReader(is));
//prepare object to sending data to Server Program (OutputStream object) :-
OutputStream os = sock.getOutputStream();
//object to send data to Server (PrintWriter object)
PrintWriter pw = new PrintWriter(os, true);
OutputStream os = sock.getOutputStream();
//object to send data to Server (PrintWriter object)
PrintWriter pw = new PrintWriter(os, true);
//user confirmation message:-
System.out.print("\n\n Please ensure that Server application is already running, then start the chatting.....\n\n :\t");
//Processing for Chatting:-
while(true)
{
System.out.print("\n\n Please ensure that Server application is already running, then start the chatting.....\n\n :\t");
//Processing for Chatting:-
while(true)
{
// reading data from KeyBoard:-
sendMessage = keybordRead.readLine();
sendMessage = keybordRead.readLine();
// sending data to the Server Program:-
pw.println(sendMessage);
// flush the data
pw.flush();
// receive data from Server
if((receiveMessage = receiveRead.readLine()) != null)
{
System.out.println(receiveMessage); // displaying received data at DOS prompt/console
}
}
}
}
pw.println(sendMessage);
// flush the data
pw.flush();
// receive data from Server
if((receiveMessage = receiveRead.readLine()) != null)
{
System.out.println(receiveMessage); // displaying received data at DOS prompt/console
}
}
}
}
Note:-
- First compile both application using "javac" tool.
- Open two different command prompt.
- First run the Server program in one command prompt.
- Then run the Client program in another command prompt.
- Send the message from Client application and receive message on Server program.
- Then send the message from Server program and receive these message on Client.
Now you can feel the chatting using networking techniques in Client-Server application...
No comments:
Post a Comment
Please share your feedback