网络编程

原创 2013年12月03日 09:45:29
import java.net.*;
/*
需求:通过udp传输方式,将一段文字数据发送出去。
定义一个udp发送端
思路:
1,建立udpsocket服务。
2,提供数据,并将数据封装到数据包包中
3,通过socket服务的发送功能将数据包发出去
4,关闭资源。
*/
class UdpSend
{
    public static void main(String[] args) throws Exception
    {
        //1,创建udp服务。通过DatagramSocket对象。
        DatagramSocket ds = new DatagramSocket();

        //2,确定数据,并封装成数据报包
        byte[] buf = "udp ge men lai le".getBytes();
        DatagramPacket dp =
            new DatagramPacket(buf,buf.length,InetAddress.getByName("172.28.1.135"),10000);
        
        //3,通过socket服务,将已有的数据报包发送出去。通过send方法
        ds.send(dp);

        //4,关闭资源
        ds.close();
        
    }
}

/*
需求:
定义一个应用程序,用于接收udp协议传输的数据并处理

定义一个udp的接收端
思路:
1,定义udpsocket服务。通常会监听一个端口。其实就是给这个接收网络应用程序定义数字标识。
方便于明确哪些数据过来该应用程序进行处理。
2,定义一个数据包,因为要存储接收到的字节数据,
因为数据包对象中有更多功能可以提取字节数据中的不同数据信息
3,通过socket服务的receive方法将受到的数据
4,通过数据包对象的特有功能,将这些不同的数据取出,打印在控制台上
5,关闭资源
*/
class UdpRece
{
    public static void main(String[] args) throws Exception{
        //1穿件udp socket服务,建立端点。
        DatagramSocket ds = new DatagramSocket(10000);

        //2,定义数据包用于存储数据
        byte[] buf = new byte[1024];
        DatagramPacket dp = new DatagramPacket(buf,buf.length);

        //3,通过服务的receive方法将受到的数据存入数据包中。
        ds.receive(dp);

        //4,通过数据包的方法获取其中的数据。
        String ip = dp.getAddress().getHostAddress();

        String data = new String(dp.getData(),0,dp.getLength());

        int port = dp.getPort();

        System.out.println(ip + "::" + data + "::" + port);

        //5,关闭资源
        ds.close();
    }
}


























Linux 网络编程——TCP编程

概述TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP 具有以下特点:1)电话系统服务模式的抽象2)每一次完...
  • tennysonsky
  • tennysonsky
  • 2015年05月12日 12:33
  • 30542

Unix网络编程学习日记

今天开始拜读《Unix网络编程》。找到的源代码在Linux下有各种问题,最后决定还是自己从头写比较好。 从第一个时间服务程序开始学习。今天先看一下主要的头文件的作用。 在common.h中(参照 ...
  • pdcxs007
  • pdcxs007
  • 2015年02月11日 17:34
  • 2423

常见的网络编程面试题

1:tcp和udp的区别 TCP:是面向连接的流传输控制协议,具有高可靠性,确保传输数据的正确性,有验证重发机制,因此不会出现丢失或乱序。 UDP:是无连接的数据报服务,不对数据报进行检查与修改,无须...
  • windows_nt
  • windows_nt
  • 2014年06月05日 21:08
  • 13888

Java网络编程第一章

网络编程第一章笔记 首先说明一下:这是JAVA网络编程个人阅读笔记,书籍是《Java网络编程》第四版,原著:Elliotte Rusty Harold,译者:李帅,荆涛,中国电力出版社出版。 图 ...
  • qq_26816591
  • qq_26816591
  • 2016年11月04日 11:20
  • 1757

学习Linux网络编程(转载,很不错的入门文章)

出处未知 这篇教程是用来介绍在Linux下编写网络程序的.-----------------------------------------------------------...
  • bat603
  • bat603
  • 2006年08月25日 09:06
  • 4824

cocos2d网络编程由浅入深(1)-基础概念

提起网络编程,我们可以第一想到的是socket,TCP/IP之类的,初识cocos2d网络编程,大家可能一头雾水,所以笔者打算由浅入深,从最基本的网络原理来剖析网络编程,感谢大家的支持 首先,TCP/...
  • u012966983
  • u012966983
  • 2016年03月16日 00:01
  • 1171

谈谈网络编程(基于C++)

这篇文章讲了一点网络编程的一些新路,一点体悟。学习就是这种不断总结提高的过程。 设计到进程,线程,线程池,reactior和proactor并发编程模式,IOCP,linux下的epoll。。。。。...
  • chencheng126
  • chencheng126
  • 2015年01月27日 10:28
  • 11018

[转]网络/网络编程面试题收集

网络/网络编程部份:1、connect方法会阻塞,请问有什么方法可以避免其长时间阻塞?答:最通常的方法最有效的是加定时器;也可以采用非阻塞模式。2、网络中,如果客户端突然掉线或者重启,服务器端怎么样才...
  • justmuch
  • justmuch
  • 2006年06月11日 19:46
  • 7751

我的网络编程经历(DELPHI的WinSocket编程)一

               99年毕业,在一家广告公司工作,那时候还不知道如何上网,对于猫(那个时代的拨号器)的安装都觉得是件了不起的事(回想起来有点可笑,但那是事实)。当时我主要负责网页制作即HT...
  • power_yhb
  • power_yhb
  • 2007年04月29日 14:19
  • 1174

网络编程是什么

转载 对于初学者,或者没有接触过网络编程的程序员,会觉得网络编程涉及的知识很高深,很难,其实这是一种误解,当你的语法熟悉以后,其实基本的网络编程现在已经被实现的异常简单了。   网络编程是...
  • chengjun1991
  • chengjun1991
  • 2014年07月19日 13:18
  • 13869
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:网络编程
举报原因:
原因补充:

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