Share on Google+Share on Google+

UDP Client in Java

In this section, you will know how to send any request or messages for UDP server by the UDP client.

UDP Client in Java


In this section, you will know how to send any request or messages for UDP server by the UDP client. For this process you must require the destination IP address and destination port number. If you know both, then you send messages to UDP server. The sending process has been defined just  bellow:

Description of program:

Here, providing you a layout with the help of this program, which has destination IP address, destination port number, a text area and a "Send" command button. The IP address specify local host and destination port number takes a specific port number where you want to send the message. All messages written in the text area and finally click the send command button, messages are sent to the specific destination.

Description of code:

getByName(String socket):
This method identify the IP address of the host machine (localhost) which is entered in string of this method.

This method returns a sequence of bytes of the string.

DatagramPacket(byte[] message, int message_length, InetAddress address, int pnum):
This is the constructor of DatagramPacket class. The DatagramPacket class extends the Object and shows the datagam packet. It creates a datagram packet for sending messages on the specified host machine with the help of specified port number. The length of datagram packet depends upon messages size.

socket.send(DatagramPacket packet):
It can be used to send the datagarm packet to specified socket.

Here is the code of program:

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class UDPClient{
  JFrame frame;
  JPanel panel;
  JTextField field1, field2;
  JTextArea area;
  JScrollPane pane;
  JLabel label;
  JButton button;
  public static void main(String[] args) {
  UDPClient u = new UDPClient();
  public UDPClient(){
  frame = new JFrame("Text Client");
  panel = new JPanel();
  label = new JLabel("Desination IP:");
  field1 = new JTextField(20);
  label = new JLabel("Destination Port:");
  field2 = new JTextField(10);
  area = new JTextArea();
  pane = new JScrollPane(area);
  button = new JButton("Send");
  button.addActionListener(new ActionListener(){
  public void actionPerformed(ActionEvent ae){
  new SendRequest();
  public class SendRequest{
  DatagramSocket socket;
  DatagramPacket packet;
  InetAddress address;
  socket = new DatagramSocket();
  String dip = field1.getText();
  address = InetAddress.getByName(dip);
  String port = field2.getText();
  int pnum = Integer.parseInt(port);
  String mess = area.getText();
  byte message[] = mess.getBytes();
  packet = 
new DatagramPacket(message, message.length, address, pnum);
  catch(IOException io){}

Download this example.


Posted on: April 17, 2007 If you enjoyed this post then why not add us on Google+? Add us to your Circles

Share this Tutorial Follow us on Twitter, or add us on Facebook or Google Plus to keep you updated with the recent trends of Java and other open source platforms.

Discuss: UDP Client in Java   View All Comments

Post your Comment

Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image