UDPsocket编程

socket编程UDP模式,

package com.wtd.socket.udp;

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetSocketAddress;
import java.net.SocketException;

public class UDPServer {
    public static void main(String[] args) {
        try {
            DatagramSocket sever= new DatagramSocket(9000);
            byte[] data= new byte[100];
            DatagramPacket dPacket= new DatagramPacket(data, 0, data.length);
            sever.receive(dPacket);
            String string= new String(data, 0, data.length);
            byte[] data2= "hello client".getBytes();
            System.out.println(dPacket.getData());
            DatagramPacket dPacket2= new DatagramPacket(data2, 0, data2.length,dPacket.getSocketAddress());
            sever.close();
        } catch (SocketException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally{
        }

    }
}
package com.wtd.socket.udp;

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetSocketAddress;
import java.net.SocketException;

public class UDPClint {
    public static void main(String[] args) {
        try {
            DatagramSocket clint= new DatagramSocket();
            String str= "hello world";
            byte[] data= str.getBytes();
            DatagramPacket daPacket= new DatagramPacket(data, 0, data.length, new InetSocketAddress("127.0.0.1", 9000));
            clint.send(daPacket);
            clint.close();
        } catch (SocketException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }
}
时间: 2024-10-07 05:02:10

UDPsocket编程的相关文章

java读书笔记

1.豆芽它长房高,它也是根菜! 2.要么就轰轰烈烈的活着.,要么就安安静静的死去! 3.程序员这一行有三个点在支撑,技术.管理(管理自己的时间和精力).与人沟通. 4.自动类型转换: java日期类型转换: try { DateFormat format = new SimpleDateFormat("yyyy-MM-dd"); String sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new D

黑马程序员——网络编程篇

------- android培训.java培训.期待与您交流! ---------- 概述   1.网络模型        (1).OSI参考模型        (2).TCP/IP参考模型   2.网络通讯要素         (1).IP地址        (2).端口号         (3).传输协议    3.过程        1,找到对方IP. 2,数据要发送到对方指定的应用程序上.为了标识这些应用程序,所以给这些网络应用程序都用数字进行标识. 为了方便称呼这个数据,叫做端口(逻

JavaSE——UDP协议网络编程(二)

在 UDP 网络编程中,发送方与接收方没有建立联系,没有明显的服务器端和客户端的区别. 类 DatagramSocket: 此类表示用来发送和接收数据报包的套接字. 主要的构造方法: DatagramSocket():创建实例,绑定本机的默认IP地址,随机选择端口.通常用于客户端编程,没有特定监听的端口,仅仅使用一个临时的.  DatagramSocket(int port):创建实例,指定端口号,即固定监听Port端口的报文.  DatagramSocket(int port, InetAdd

python核心编程--笔记

python核心编程--笔记 的解释器options: 1.1 –d   提供调试输出 1.2 –O   生成优化的字节码(生成.pyo文件) 1.3 –S   不导入site模块以在启动时查找python路径 1.4 –v   冗余输出(导入语句详细追踪) 1.5 –m mod 将一个模块以脚本形式运行 1.6 –Q opt 除法选项(参阅文档) 1.7 –c cmd 运行以命令行字符串心事提交的python脚本 1.8 file   以给定的文件运行python脚本 2 _在解释器中表示最后

对多线程网络编程的理解

本文主要涉及,线程的构建,线程之间的通信以及网络源端和目的端的通信接口的操作这三个问题. 一.线程的创建 对于线程的创建,首先要明确使用线程的目的,使用线程给我们的程序能够带来什么好处.结合我的经验,我认为使用线程的好处主要有: 1.线程是一个独立运行的个体,它可以独立完成我们交给它的任务,而不需要我们在程序中主动显式调用: 2.当程序处理的问题及逻辑庞大时,显然,线程可以降低主线程的复杂性,使程序逻辑较为清楚:同时,方便我们进行调试,根据线程ID,迅速找到问题: 3.对于现今多核CPU的发展,

iOS_SN_Socket网络编程(一)

1.Socket简介 首先让我们通过一张图知道socket在哪里? socket在哪里 Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口. 2.TCP和UDP的区别 在这里就必须讲一下udp和tcp的区别了 TCP:面向连接.传输可靠(保证数据正确性,保证数据顺序).用于传输大量数据(流模式).速度慢,建立连接需要开销较多(时间,系统资源). UDP:面向非连接.传输不可靠.用于传输少量数据(数据包模式).速度快. 关于TCP是一种流模式的协议,UDP是一种数据报模式的

Python网络编程1--笔记

网络编程 一.客户端与服务器架构 硬件的客户端与服务器架构:打印机服务器,文件服务器 硬件服务器有关门的设备,打印机服务器有打印机,文件服务器NFS有磁盘. 软件的客户端与服务器架构:web服务器,数据库服务器,窗口服务器 软件服务器主要提供程序的运行,数据的发送与接收,合并,升级或其他的程序或数据的操作. 在完成服务之前,服务器必须要先完成一些设置.先要创建一个通讯端点,然服务器能"监听"请求.一单通讯端点创建好之后,我们在"监听"的服务器就可以进入他那等待和处理

UDP网络编程

IP地址和端口 IP地址:是计算机在网络中的唯一标示,我们在进行网络编程时一定要定位到远程计算机,而IP地址就是解决这个问题的. 端口:除了计算机外我们还要定位到具体的应用程序进程,而端口就是给应用程序分配的身份标示. UDP和TCP UDP:1,每个数据报中都给出了完整的地址信息,因此无需要建立发送方和接收方的连接.            2,UDP传输数据时是有大小限制的,每个被传输的数据报必须限定在64kB之内.             3,UDP是一个不可靠的协议,发送方所发送的数据报并

Java从零开始学四十五(Socket编程基础)

一.网络编程中两个主要的问题 一个是如何准确的定位网络上一台或多台主机,另一个就是找到主机后如何可靠高效的进行数据传输. 在TCP/IP协议中IP层主要负责网络主机的定位,数据传输的路由,由IP地址可以唯一地确定Internet上的一台主机. 而TCP层则提供面向应用的可靠(tcp)的或非可靠(UDP)的数据传输机制,这是网络编程的主要对象,一般不需要关心IP层是如何处理数据的. 目前较为流行的网络编程模型是客户机/服务器(C/S)结构.即通信双方一方作为服务器等待客户提出请求并予以响应.客户则