挺漂亮的java 模仿QQ的聊天程序,可以传文件,两人聊天,以及群聊 ,做到了冒泡提醒消息。初学java值得参考
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2012-06-06 18:18 QQ
目录 0 2012-06-08 10:19 QQQQclient
目录 0 2012-06-07 17:54 QQQQclient.svn
文件 1199 2012-06-06 08:00 QQQQclient.svnentries
目录 0 2012-06-07 17:54 QQQQclient.svnprop-base
文件 53 2012-06-04 21:25 QQQQclient.svnprop-basegirl.png.svn-base
文件 53 2012-06-04 21:25 QQQQclient.svnprop-baseman.gif.svn-base
文件 53 2012-06-04 21:25 QQQQclient.svnprop-baseman.png.svn-base
目录 0 2012-06-06 18:18 QQQQclient.svnprops
目录 0 2012-06-07 17:54 QQQQclient.svn ext-base
文件 3719 2012-06-04 21:25 QQQQclient.svn ext-baseuild.xml.svn-base
文件 5006 2012-06-04 21:25 QQQQclient.svn ext-basegirl.png.svn-base
文件 7482 2012-06-04 21:25 QQQQclient.svn ext-basejava_swing_更酷的Jlist.txt.svn-base
文件 4146 2012-06-04 21:25 QQQQclient.svn ext-baseman.gif.svn-base
文件 4971 2012-06-04 21:25 QQQQclient.svn ext-baseman.png.svn-base
文件 85 2012-06-04 21:25 QQQQclient.svn ext-basemanifest.mf.svn-base
目录 0 2012-06-06 18:18 QQQQclient.svn mp
目录 0 2012-06-06 18:18 QQQQclient.svn mpprop-base
目录 0 2012-06-06 18:18 QQQQclient.svn mpprops
目录 0 2012-06-06 18:18 QQQQclient.svn mp ext-base
目录 0 2012-06-06 18:18 QQQQclientuild
文件 3719 2012-06-04 21:25 QQQQclientuild.xml
目录 0 2012-06-07 17:54 QQQQclientuild.svn
文件 203 2012-06-04 21:25 QQQQclientuild.svnentries
目录 0 2012-06-06 18:18 QQQQclientuild.svnprop-base
目录 0 2012-06-06 18:18 QQQQclientuild.svnprops
目录 0 2012-06-06 18:18 QQQQclientuild.svn ext-base
目录 0 2012-06-06 18:18 QQQQclientuild.svn mp
目录 0 2012-06-06 18:18 QQQQclientuild.svn mpprop-base
目录 0 2012-06-06 18:18 QQQQclientuild.svn mpprops
目录 0 2012-06-06 18:18 QQQQclientuild.svn mp ext-base
............此处省略739个文件信息
/*
* To change this template choose Tools | Templates
* and open the template in the editor.
*/
package com.itjob.zfsn.qq.client;
import com.itjob.zfsn.qq.gui.linkManGui;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.Socket;
import java.util.*;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import qqcommon.*;
/**
*
* @author Administrator
*/
public class Client {
private static final String info = “server.properties“;
private IMessageService conveyMsg;
public Client() {
connectServer();
}
/**
* 注册
*
* @param u
* @return
*/
public Message rigester(User u) {
//构造注册消息
Message msg = new Message(MessageType.Register_Type u);
//发送注册消息
conveyMsg.sendMessage(msg);
//接受注册结果
return conveyMsg.getMessage();
}
/**
* 连接服务器
*/
public void connectServer() {
Properties pro = initInfo();
String ip=(String) pro.getProperty(“serverIP“);
int port=Integer.parseInt(pro.getProperty(“port“)) ;
Socket s = null;
try {
s = new Socket(ipport);
conveyMsg = TcpMessageServiceImpl.getInstance(s);
} catch (Exception e) {
e.printStackTrace();
} finally {
if (s == null) {
resetInfo();
connectServer();
}
}
}
public void resetInfo() {
Properties pro = initInfo();
String temp = ““;
while (true) {
temp = JOptionPane.showInputDialog(null “请输入服务器IP“ “连接失败,请配置信息“ JOptionPane.INFORMATION_MESSAGE);
if (temp.matches(“\d+\.\d+\.\d+\.\d+“)) {
break;
}
JOptionPane.showMessageDialog(null “请填写正确的IP“ “错误提示“ JOptionPane.ERROR_MESSAGE);
}
pro.setProperty(“serverIP“ temp);
while (true) {
temp = JOptionPane.showInputDialog(null “请填写服务器端口号“);
if (temp.matches(“\d+“)) {
break;
}
JOptionPane.showMessageDialog(null “端口号是整数“ “错误提示“ JOptionPane.ERROR_MESSAGE);
}
pro.setProperty(“port“ temp);
try {
pro.store(new FileOutputStream(info) ““);
} catch (IOException ex) {
Logger.getLogger(Client.class.getName()).log(Level.SEVERE null ex);
}
}
/**
* 用户登录
*
* @param user
* @return
*/
public Message login(User user) {
//构造登录消息
Message msg = new Message(MessageType.Login_Type user);
//发送消息
conveyMsg.sendMessage(msg);
//接收消息
return conveyMsg.getMessage();
}
/**
* 开始接收信息
*
* @param s
* @param lm liakManGui
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2012-06-06 18:18 QQ
目录 0 2012-06-08 10:19 QQQQclient
目录 0 2012-06-07 17:54 QQQQclient.svn
文件 1199 2012-06-06 08:00 QQQQclient.svnentries
目录 0 2012-06-07 17:54 QQQQclient.svnprop-ba
文件 53 2012-06-04 21:25 QQQQclient.svnprop-ba
文件 53 2012-06-04 21:25 QQQQclient.svnprop-ba
文件 53 2012-06-04 21:25 QQQQclient.svnprop-ba
目录 0 2012-06-06 18:18 QQQQclient.svnprops
目录 0 2012-06-07 17:54 QQQQclient.svn ext-ba
文件 3719 2012-06-04 21:25 QQQQclient.svn ext-ba
文件 5006 2012-06-04 21:25 QQQQclient.svn ext-ba
文件 7482 2012-06-04 21:25 QQQQclient.svn ext-ba
文件 4146 2012-06-04 21:25 QQQQclient.svn ext-ba
文件 4971 2012-06-04 21:25 QQQQclient.svn ext-ba
文件 85 2012-06-04 21:25 QQQQclient.svn ext-ba
目录 0 2012-06-06 18:18 QQQQclient.svn mp
目录 0 2012-06-06 18:18 QQQQclient.svn mpprop-ba
目录 0 2012-06-06 18:18 QQQQclient.svn mpprops
目录 0 2012-06-06 18:18 QQQQclient.svn mp ext-ba
目录 0 2012-06-06 18:18 QQQQclientuild
文件 3719 2012-06-04 21:25 QQQQclientuild.xm
目录 0 2012-06-07 17:54 QQQQclientuild.svn
文件 203 2012-06-04 21:25 QQQQclientuild.svnentries
目录 0 2012-06-06 18:18 QQQQclientuild.svnprop-ba
目录 0 2012-06-06 18:18 QQQQclientuild.svnprops
目录 0 2012-06-06 18:18 QQQQclientuild.svn ext-ba
目录 0 2012-06-06 18:18 QQQQclientuild.svn mp
目录 0 2012-06-06 18:18 QQQQclientuild.svn mpprop-ba
目录 0 2012-06-06 18:18 QQQQclientuild.svn mpprops
目录 0 2012-06-06 18:18 QQQQclientuild.svn mp ext-ba
............此处省略739个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)