TCP协议和UDP协议简单实例

原创 2015年07月08日 09:52:33

TCP协议创建步骤:

import java.net.*;
import java.io.*;
/**
客户端负责发送数据:
步骤:
1、创建Socket对象,绑定IP和端口号
2、设置键盘录入
3、将内容写到服务器端
*/
class TCPClient{
/**
Socket(InetAddress address, int port) 
          创建一个流套接字并将其连接到指定 IP 地址的指定端口号。
*/
public static  void main(String args[])throws Exception{
Socket s = new Socket("192.168.51.23",8888);
BufferedReader buffr = new BufferedReader(new InputStreamReader(System.in));
/**
PrintWriter(OutputStream out, boolean autoFlush) 
          通过现有的 OutputStream 创建新的 PrintWriter。
*/
PrintWriter out =  new PrintWriter(s.getOutputStream(),true);
String len = null;
while((len= buffr.readLine())!=null){
out.println(len);
}
buffr.close();
s.close();
}
}
/**
服务器端接收数据
步骤:
1、创建ServerSocket对象,设置绑定的端口号
2、调用accept方法获取客户端的Socket对象。
3、调用Socket.getOutputStream()对象将数据写到控制台上。
*/
class TCPServer{
public static  void main(String args[])throws Exception{
/*
ServerSocket(int port) 
          创建绑定到特定端口的服务器套接字。
*/
ServerSocket ss = new ServerSocket(8888);
/**
accept() 
          侦听并接受到此套接字的连接。
*/
Socket s = ss.accept();
BufferedReader bufr = new BufferedReader(new InputStreamReader(s.getInputStream()));
String len = null;
while((len=bufr.readLine())!=null){
System.out.println(len);
}
}
}
public class TCPTest{
public static void main(String args[]){}
}

UDP协议实例:

import java.io.*;
import java.net.*;


/**
 * UDP客户端 发送信息。
 * 步骤:
 * 1、创建DatagramPacket对象,设置缓冲区、长度、连接服务器的端口号和IP
 * 2、创建DatagramSocket对象,调用send方法发送。
 * @author admin
 *
 */
class UDPSend {
public static void main(String args[]) throws Exception{
//控制键盘输入。
BufferedReader in
  = new BufferedReader(new InputStreamReader(System.in));
//转换成byte数组,想服务器端发送
String len = null;
DatagramSocket ds = new DatagramSocket();
while((len = in.readLine())!=null){
if("over".equals(len))
break;
byte[] buf = len.getBytes();
DatagramPacket dgp = new DatagramPacket(buf, buf.length, 
new InetSocketAddress("192.168.51.23",10003) );
ds.send(dgp);
}
ds.close();
}
}




/**
 * 服务器端接收数据:
 * 步骤:
 * 1、创建DatagramSocket对象,指定的端口。
 * 2、创建DatagramPacket对象,准备一个数据包接收客户端传来的额数据
 * 3、调用receive方法接收数据包。
 * 4、将接收的数据包,通过IO解析到控制台中。
 * @author admin
 *
 */


class UDPRece {
public static void main(String args[]) throws Exception {
/**
* DatagramSocket(int port) 
          创建数据报套接字并将其绑定到本地主机上的指定端口。
*/
DatagramSocket ds = new DatagramSocket(10003);
/**
* DatagramPacket(byte[] buf, int length) 
          构造 DatagramPacket,用来接收长度为 length 的数据包。
*/
byte[] buf = new byte[1024];
while(true){
DatagramPacket dp= new DatagramPacket(buf, buf.length);
ds.receive(dp);
String str = new String(buf);
//获得客户端ip
String ip = dp.getAddress().getHostAddress();
System.out.println("IP::"+ip+"内容::"+str);
}
// ds.close();
}
}


/**
 * DatagramPacket(byte[] buf, int length, SocketAddress address) 
          构造数据报包,用来将长度为 length 的包发送到指定主机上的指定端口号。
 * @author admin
 *
 */
public class UDPTest {
public static void main(String[] args) throws Exception{

}
}

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

相关文章推荐

系统间通信:基于TCP协议的RPC实现范例

系统间通信:基于TCP协议的RPC实现范例 一、RPC名词解释          RPC的全称是Remote Process Call,即远程过程调用,它应用广泛,实现方式也很多,拥有RMI、WebS...

C++基于TCP/IP简单的客户端、服务器通信程序实例

本篇文章实现了一个基于TCP 的

用udp协议通讯示例 UDP实现广播接收回复的例子

一、绪言 udp是一种面向非连接,不可靠的通讯协议,相对于tcp来说,虽然可靠性不及,但传输效率较高。所以在网络上仍有很大的用途。这几日需要了解下udp通讯的过程,上网发现这方面的资料还挺少。于...

Java 线程和进程,并发解决之synchronized

什么是进程? 程序并不能单独运行,只有将程序装载到内存中,系统为它分配资源才能运行,而这种执行的程序就称之为进程。 程序和进程的区别就在于:程序是指令的集合,它是进程运行的静态描述文本;进程是程序的一...

定时任务组件使用经验介绍

定时任务,是指定一个未来的时间范围执行一定任务的功能。windows操作系统把它叫做任务计划,linux中cron服务都提供了这个功能。在我们开发业务系统中也会涉及到这个功能,java的quartz组...
  • yan_dk
  • yan_dk
  • 2012年06月19日 16:56
  • 1214

【Java网络编程】UDP协议实例——简单的在线聊天程序

package com.shaye.java.webtest; /* * 编写一个聊天程序 * 有收数据的部分,同时也能发送数据。 * 两部分需要同时执行,因此需要用到多线程技术。 */ /...

Java基于UDP协议的简单通讯实例

这是一个Java基于UDP协议的简单通讯实例,其中主要用到DatagramSocket类和DatagramPacket类。...

【转】Qt TCP协议 传输简单字符串实例

TCP协议的程序使用的是客户端/服务器模式,在Qt中提供了QTcpSocket类来编写客户端程序,使用QTcpServer类编写服务器端程序。 AD: Qt ...

Qt TCP协议 传输简单字符串实例

Qt TCP协议 传输简单字符串实例是本文要介绍的内容。TCP即Transmission Control Protocol,传输控制协议。与UDP不同,它是面向连接和数据流的可靠传输协议。也就是说,它...
  • llw01
  • llw01
  • 2013年08月08日 17:35
  • 922

Qt TCP协议 传输简单字符串实例

转载自http://mobile.51cto.com/symbian-270781_all.htm Qt TCP协议 传输简单字符串实例是本文要介绍的内容。TCP即Transmission Co...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:TCP协议和UDP协议简单实例
举报原因:
原因补充:

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