⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 talkservice.java

📁 本系统用户为企业内部员工
💻 JAVA
字号:
package servertalk;

import java.net.Socket;
import java.util.List;
import java.util.ArrayList;
import java.util.StringTokenizer;

/**
 * 汇总客户信息
 *
 *
 *
 * @author zhoujian
 * @version 1.00
 */

public class TalkService
{
    public final static int MSG_LOGIN = 1;
    public final static int MSG_TEXT = 2;
    static List lstInfo = new ArrayList();

    public TalkService(){}

    public static void procMsg(String msg, Socket cs)
    										throws Exception
    {
        List l = decode(msg);
        int msgId = Integer.parseInt(l.get(0).toString());
         //对于msg信息的内容分别处理
        switch(msgId)
        {
        case MSG_LOGIN:
            procMsgLogin(l,cs);
            break;
        case MSG_TEXT:
            procMsgText(l,cs);
            break;
        }
    }

    private static void procMsgLogin(List l, Socket cs)
    {
        String qq = l.get(2).toString();
        //收集客户登陆信息添加至列表中
        TalkClientInfo ci = new TalkClientInfo(qq, cs);
        lstInfo.add(ci);
    }

    private static void procMsgText(List l, Socket cs)
    										throws Exception
    {  /* msg信息格式 2+LocalQQ+FriendQQ+信息 */
        String qq = l.get(1).toString();
        String friendQq = l.get(2).toString();
        String msg = l.get(3).toString();
        TalkClientInfo ci;//声明客户信息表准备调用
        for(int i=0; i<lstInfo.size(); i++)
        {
            ci = (TalkClientInfo)lstInfo.get(i);
            if(friendQq.equals(ci.getQq()))
            {
                msg = qq+":"+msg;
                TcpSocket.send(ci.getCs(), msg);	//将客户甲聊天信息发给在线的朋友
                break;
            }
        }
    }


    private static List decode(String msg)
    {/* msg=1+1+LocalQQ+LocalPassWord*/
        List l = new ArrayList();
        StringTokenizer st = new StringTokenizer(msg, "+");
        while(st.hasMoreTokens())
        {
            l.add(st.nextToken());
        }
        return l;
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -