| 网站首页 | JAVA文章 | AppServers | Web开发 | 应用开发 | 资源下载 |
    想学好编程,学好外语很重要  [enadd  2006年12月25日]        
设为首页 加入收藏 联系站长
您现在的位置: 编程笔记网 >> JAVA文章 >> java socket >> 文章正文
用udp方式进行聊天的java实现        【字体:
用udp方式进行聊天的java实现
作者:-    文章来源:-    点击数:    更新时间:2006-7-24

bootcool 原作

我最近也在研究用java实现oicq。
这是我的客户端的简单编程实现。
主要是通过udp方式,实现用户间的对话。
其中运用了序列化类的方法。
以下是源代码,请多提意见。

//发送消息类
Message.java

import java.io.Serializable;

public class Message implements Serializable{

private String msg;
private String id;
private String destid;

public Message(String msg, String id, String destid) {
this.msg = msg;
this.id = id;
this.destid = destid;
}

//获得消息内容
public String getMessage() {
return msg;
}

//获得发送方的ip
public String getID() {
return id;
}

//获得接受方的ip
public String getDestID() {
return destid;
}
}



//接受方
Receiver.java
import java.net.*;
import java.io.*;

public class Receiver extends Thread {

private Message msg;
private DatagramPacket packet;
private DatagramSocket socket;
private byte[] recvBuf = new byte[500];

public Receiver() {
try{
//创建udp包以接受数据。
packet = new DatagramPacke(recvBuf,recvBuf.length);

//创建接受方的udp端口以接收数据
socket = new DatagramSocket(7002);
}
catch(Exception e){}
}

public void run() {
try {
while(true){
//接受数据
socket.receive(packet);

ByteArrayInputStream byteStream = new
ByteArrayInputStream(recvBuf);
ObjectInputStream is = new ObjectInputStream(new
BufferedInputStream(byteStram));
Object o = is.readObject();
msg = (Message)o;
is.close();

System.out.println(msg.getMessage());
}
}
catch(Throwable t) {
t.printStackTrace();
}
}
}


//发送方
Sender.java
import java.net.*;
import java.io.*;

public class Sender extends Thread {

private Message msg;
private DatagramSocket socket;
private DatagramPacket packet;

public Sender(Message msg) {
try {
this.msg = msg;
//获得目的方的ip地址
String destID = msg.getDestID();

//获得将要发送的消息内容
String destID = msg.getDestIDString message = msg.getMessage();

[1] [2] 下一页  

文章录入:enadd    责任编辑:enadd 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
  • HTTP 1.1状态代码及其含义

  • java开发的邮件发送程序

  • 从socket中读取数据时使用超…

  • 对等计算实践:基于 IP 多播…

  • 穿透Socks5 代理的UDP编程

  • 使用Java控制UDP协议

  • 如何用Java实现网络中国象棋…

  • 一个Socket服务器样板程序

  • Java Socket编程

  • Java Socket编程之五

  •   网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 管理登录 |