Java网络编程(一):服务端与客户端建立(UDP方式)

原创 2015年09月24日 14:29:57

Java网络编程的面向数据连接方式主要有两种:1、UDP,非面向连接,效率高,但是安全性低,例如短信;
2、TCP,面向连接,效率低,但是安全性相对较高一点,例如电话。这篇主要讲的是UDP方式下建立客户端和服务端。


   对于网络编程进行对网路的连接,主要用到两个大类:DataGramSocket和DataGramPacket.其中第一个是用来建立连接么第二个是用来封装数据的。

- Client端的建立步骤:1、创建客户端,2、准备数据,3、打包,4、发送,5、释放资源

public class Servers {
    public static void  main(String[] a) throws IOException{

    DatagramSocket so=new DatagramSocket(888);
    String msg="biancheng";
    byte[] data=msg.getBytes();
    DatagramPacket dp=new DatagramPacket(data, data.length,new InetSocketAddress("localhost", 8888));
    so.send(dp);
    so.close();

}

}

我们需要使用DataGramSocket新建一个客户端对象,需要加入一个端口,这个端口要避免是否已经被主机使用过了。

  • Server端建立:1.创建服务器端口;2、准备数据接受容器,3、接收数据,4、分析数据,5、释放资源
public class Clients {
    public static void  main(String[] args) throws IOException{
    DatagramSocket server=new DatagramSocket(8888);
    byte[] container=new byte[1024];
    DatagramPacket dp=new DatagramPacket(container, container.length);
    server.receive(dp);
    //分析数据
     byte[] data=dp.getData();
     int len=dp.getLength();
     System.out.println(new String(data));

}
}

这是一个简单的客户端和服务端建立的小例子,主要是为了交代建立的过程,从上面的服务端建立我们可以看出,UDP的连接方式不是在建立断楼的时候就找目的地址,而是让数据发送过程中去找服务器地址,所以数据在发送过程中容易丢失,可以试试将服务器关闭。客户端运行发现不会报错。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

java使用UDP来进行客户端和服务器端通信的简单例子

1:客户端程序 package com.pb.udp; import java.io.IOException; import java.net.DatagramPacket; import...

java的UDP服务端实现

import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetAddress; /** ...

windows Socket编程之UDP的服务端和客户端

上一篇讲了TCP的服务端和客户端,本篇文章来介绍一下UDP的服务端和客户端。 相比TCP来说,UDP相对比较简单,刚开始的时候,和TCP一样都需要先进行网络环境的初始化,即调用WSAStartup函数...
  • Timmiy
  • Timmiy
  • 2016-07-24 22:45
  • 3663

UDP服务器端和客户端程序设计

实验三 UDP服务器端程序设计 一、实验目的 学习和掌握Linux下的UDP服务器基本原理和基本编程方法,体会与TCP的区别,TCP编程:http://blog.csdn.net/yueguang...

客户端到服务器端的通信过程及原理(很清晰,保证看后顿悟)

学习任何东西,我们只要搞清楚其原理,就会触类旁通。现在结和我所学,我想总结一下客户端到服务器端的通信过程。只有明白了原理,我们才会明白当我们程序开发过程中错误的问题会出现在那,才会更好的解决问题。 ...

基于UDP实现简单的客户端服务端的消息传递

前面的TCP是有可靠的,有序的。现在看看UDP,UDP是不可靠的,无序的。 现在看看实现: 这里我也用两个类模拟了客户端与服务端, 现在直接看下代码: UDPServer.java...

Android版本的"Wannacry"文件加密病毒样本分析(附带锁机)

之前一个Wannacry病毒样本在PC端肆意了很久,就是RSA加密文件,勒索钱财。不给钱就删除。但是现在移动设备如此之多,就有一些不法分子想把这个病毒扩散到移动设备了,这几天一个哥们给了一个病毒样本,...

UDP服务器和客户端交互

实验三 UDP服务器端程序设计 一、实验目的 学习和掌握Linux下的UDP服务器基本原理和基本编程方法,体会与TCP的区别,TCP编程:http://blog.csdn.net/yueg...

关于Java的UDP通信连接实现

知识点:1.关于TCP与UDP的主要区别: TCP—传输控制协议,提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)