1. package com;
  2.  
  3. import java.io.IOException;
  4. import java.net.*;
  5.  
  6. /**
  7. * UDP Client
  8. *
  9. * Created by Administrator on 2018/5/3.
  10. */
  11. public class Client {
  12.  
  13. public static void main(String[] args) throws IOException {
  14.  
  15. /**
  16. * send message
  17. */
  18. InetAddress inetAddress = InetAddress.getByName("localhost");
  19. byte[] data = "name:tom, pwd:123".getBytes();
  20. DatagramPacket datagramPacket = new DatagramPacket(data, data.length, inetAddress, 8800);
  21. DatagramSocket datagramSocket = new DatagramSocket();
  22. datagramSocket.send(datagramPacket);
  23.  
  24. /**
  25. * receive message
  26. */
  27. byte[] data2 = new byte[1024];
  28. DatagramPacket datagramPacket1 = new DatagramPacket(data2, data2.length);
  29. datagramSocket.receive(datagramPacket1);
  30. String info = new String(data2, 0, data2.length);
  31. System.out.println("I am Client, Server say:" + info);
  32.  
  33. /**
  34. * close resource
  35. */
  36. datagramSocket.close();
  37. }
  38. }
  1. package com;
  2.  
  3. import java.io.IOException;
  4. import java.net.DatagramPacket;
  5. import java.net.DatagramSocket;
  6. import java.net.InetAddress;
  7.  
  8. /**
  9. * UDP Server
  10. *
  11. * Created by Administrator on 2018/5/3.
  12. */
  13. public class Server {
  14.  
  15. public static void main(String[] args) throws IOException {
  16.  
  17. DatagramSocket datagramSocket = new DatagramSocket(8800);
  18.  
  19. /**
  20. * receive message
  21. */
  22. byte[] bytes = new byte[1024];
  23. DatagramPacket datagramPacket = new DatagramPacket(bytes, bytes.length);
  24. datagramSocket.receive(datagramPacket);
  25. String info = new String(bytes, 0, datagramPacket.getLength());
  26. System.out.println("I am Server, Client say: " + info);
  27.  
  28. /**
  29. * send message
  30. */
  31. InetAddress inetAddress = datagramPacket.getAddress();
  32. int port = datagramPacket.getPort();
  33. byte[] data = "welcome!".getBytes();
  34. DatagramPacket datagramPacket1 = new DatagramPacket(data, data.length, inetAddress, port);
  35. datagramSocket.send(datagramPacket1);
  36.  
  37. /**
  38. * close resource
  39. */
  40. datagramSocket.close();
  41. }
  42. }

Java Socket UDP编程的更多相关文章

  1. Java Socket 网络编程心跳设计概念

    Java Socket 网络编程心跳设计概念   1.一般是用来判断对方(设备,进程或其它网元)是否正常动行,一 般采用定时发送简单的通讯包,如果在指定时间段内未收到对方响应,则判断对方已经当掉.用于 ...

  2. Java Socket网络编程的经典例子(转)

    事实上网络编程简单的理解就是两台计算机相互通讯数据而已,对于程序员而言,去掌握一种编程接口并使用一种编程模型相对就会显得简单的多了,Java SDK提供一些相对简单的Api来完成这些工作.Socket ...

  3. Java Socket网络编程Server端详解

    Socket通信:分为客户端和服务端的socket代码. Java SDK提供一些相对简单的Api来完成.对于Java而言.这些Api存在与java.net 这个包里面.因此只要导入这个包就可以开始网 ...

  4. 循序渐进Java Socket网络编程(多客户端、信息共享、文件传输)

    目录[-] 一.TCP/IP协议 二.TCP与UDP 三.Socket是什么 四.Java中的Socket 五.基本的Client/Server程序 六.多客户端连接服务器 七.信息共享 八.文件传输 ...

  5. 【Socket】Java Socket基础编程

    Socket是Java网络编程的基础,了解还是有好处的, 这篇文章主要讲解Socket的基础编程.Socket用在哪呢,主要用在进程间,网络间通信.本篇比较长,特别做了个目录: 一.Socket通信基 ...

  6. Java Socket网络编程学习笔记(一)

    0.前言 其实大概半年前就已经看过网络编程Socket的知识了(传统IO),但是因为长时间的不使用导致忘的一干二净,最近正好准备校招,又重新看了网络编程这一章, 是传统IO(BIO)相关的内容,故在此 ...

  7. java Socket Udp聊天

    import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import jav ...

  8. java Socket Udp

    接收端: package cn.itcast.net.p2.udp; import java.io.IOException;import java.net.DatagramPacket;import ...

  9. java - Socket简单编程实践

    1.简介: 1)SOCKET是应用程序和网络之间的一个接口.SOCKET创建设置好以后,应用程序可以: 通过网络把数据发送到socket . 通过网络从socket接收数据.(通信的前提是应用程序知道 ...

随机推荐

  1. java 数据存储

    简单的记录一下而已. 1.寄存器: 特点:快,存储有限. 存储地点:处理器内部. 2.堆栈 特点:仅次于寄存器快,通过堆栈指针在处理器获取支持.堆栈指针下移,分配内存,上移,释放内存.此外须知生命周期 ...

  2. php中注释有关内容

    //单行注释 /*多行注释*/ /** 文档注释 (注意 文档注释与前面的那个多行注释不同)文档注释可以和特定的程序元素相关联 例如 类 函数 常量 变量方法 问了将文档注释与元素相关联 只需要在元素 ...

  3. MathExam第二次作业(升级版)

    MathExamLv2——林华伟 211506319 陈珍 211406263   一.预估与实际 PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实 ...

  4. P4 Runtime和p4 info

    p4runtime P4 Runtime是一套基于Protobuf以及gRPC框架上的协议,通过P4runtime,SDN控制器可以控制能够支援p4的设备. p4runtime当前由p4 API wo ...

  5. UITableViewCell contentView layoutSubviews 死循环

    发现一个问题,当在UITableViewCell 的 layoutSubviews 中修改 contentView 的frame时会产生死循环.该问题只会出现在iOS8中,iOS7与iOS9均没有问题 ...

  6. 图文详解 IntelliJ IDEA 15 创建普通 Java Web 项目

    第 1 部分:新建一个 Java Web Application 项目 File -> New -> Project…,请选择 Java EE 这个模块下的 Web Application ...

  7. CentOS下php安装mcrypt扩展

    CentOS下php安装mcrypt扩展 Posted on 2012-09-12 15:27 C'est la vie 阅读(48294) 评论(3) 编辑 收藏 (以下步骤均为本人实际操作,可能与 ...

  8. py27使用redis

    1.安装redis pip install redis 转载请注明博客出处:http://www.cnblogs.com/cjh-notes/

  9. DHCP:动态主机配置协议

    DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作, 主要有两个用途:给内部网络或网络服务供应商自动分配IP ...

  10. P1065 作业调度方案

    题目描述 我们现在要利用m台机器加工n个工件,每个工件都有m道工序,每道工序都在不同的指定的机器上完成.每个工件的每道工序都有指定的加工时间. 每个工件的每个工序称为一个操作,我们用记号j−k表示一个 ...